Hi there! 我是嘟嘟~受到前輩啟發,想說可以紀錄一下自己練習的過程,小女子為程式超超菜鳥,此系列非教學文,僅為個人解題筆記,可能有錯誤或未補充詳盡之處,歡迎前輩們不吝指教!也歡迎正在自學的夥伴一起討論學習~
第一行給定一個整數T
代表要被測試的數量。
後面T行代表要被測試的字串S
。
注意: 0被視為偶數索引值
Note: is considered to be an even index.
限制:
1 ≦ T ≦ 10
2 ≦ len(S) ≦ 10000
對每個字串S,印出S的偶數索引字元,後面接一個空格,再接S的奇數索引字元。
2
Hacker
Rank
Hce akr
Rn ak
# Enter your code here. Read input from STDIN. Print output to STDOUT
T = int(input()) #輸入一數字字串並轉換為整數
for i in range(T): #歷遍T次
S = input() #輸入測試字串
print(S[0::2] + ' ' + S[1::2]) #印出字串的偶數索引字符和奇數索引字符,並用空格隔開
5/2 補充:
用空格隔開,也可以直接用逗號方式表達:
print(S[0::2], S[1::2])
(感謝前輩補充)
輸入
2
ivvkxq
ivvkx
結果為
ivx vkq
ivx vk
若要擷取字串某個部分的字元,可以使用 Slicing(分割) 的方式:
字串[索引值]
假設有一字串S,若要提取最後一個字符,可以使用 S[-1]
字串[起始值:結束值:間隔值]
起始值如果不填就代表由最前方算起,結束值如果不填就代表算到最後。要注意的是結束值本身並不包含在內。(類似range)
近日每天看你發文練程式,
覺得你的新手分享文寫得很棒呢 ^^
會記筆記還有查詢參考資料做補充,
留言鼓勵一下
對了,另外分享一種寫法,
需要用「空格」隔開時,除了用字串串接寫print(S[0::2] + ' ' + S[1::2])
之外,
也可以直接寫print(S[0::2], S[1::2])
把要印的參數以「逗號」隔開
小馬哥哈囉:
感謝補充!!原來用逗號印出就會隔開了! 也謝謝你的鼓勵唷!