如何,每5個字符打印的「X」字符,如序列:如何在「X」字符序列中打印每5個字符?
9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08
如何,每5個字符打印的「X」字符,如序列:如何在「X」字符序列中打印每5個字符?
9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08
使用切片
print("9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"[::5])
輸出:
>>> '9045e51f22550'
您可以生成範圍的推移任意增加通過傳遞第三個參數給它這樣一個迭代器:
a = "1234567890"
for x in range(0, len(a), 5):
print(a[x])
Dorvak和約恩建議切片標誌。這更優雅。
的range函數可以接受的增量:
x = "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"
for i in range(0, len(x), 5):
print(x[i])
更新:如果你想輸出爲一系列的字符,你可以用生成器表達式:
>>> x = "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"
>>> y = "".join(x[i] for i in range(0, len(x), 5))
>>> y
'9045e51f22550'
這很好,雖然我應該指定我也希望輸出作爲一個字符序列。謝謝。 – Rezic
已更新,但Yoann's/dorvak的答案當然更優雅。 –
teststring = "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"
for num, letter in enumerate(teststring, 1):
if num % 5 == 0:
print letter
枚舉將從起始索引1開始計數,並且我們可以使用該索引打印整齊劃一的字母5.
使用切片符號:
>>> "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"[::5]
'9045e51f22550'
在結合打印:
>>> for i in "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"[::5]:
... print i
...
9
0
4
5
e
5
1
f
2
2
5
5
0
value = "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"
for i in range(0,len(value),4):
print i
這比我的回答好。 –