这个问题在这里已经有了答案:
What is the most “pythonic” way to iterate over a list in chunks?
(38 个回答)
6年前关闭。
我正在使用 Python 为我工作的实验室编程。如何切出给定字符串中的每 3 个字符并将其附加到列表中?
即 XXXxxxXXXxxxXXXxxxXXXxxxXXX(其中 X 或 x 是任何给定的字母)
string = 'XXXxxxXXXxxxXXXxxxXXXxxxXXX'
mylist = []
for x in string:
string[?:?:?]
mylist.append(string)
我希望列表看起来像这样:['XXX','xxx','XXX','xxx','XXX'....etc]
有任何想法吗?
最佳答案
简而言之,你不能。
在更长的时间内,您将需要编写自己的函数,可能是:
def split(str, num):
return [ str[start:start+num] for start in range(0, len(str), num) ]
例如:
>>> split("xxxXXX", 3)
['xxx', 'XXX']
>>> split("xxxXXXxx", 3)
['xxx', 'XXX', 'xx']
关于python - 如何每 3 个索引切片一个字符串?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5711452/