2024-04-19 00:30:20 发布
网友
我有一根绳子
'abcdefgh12345678abcdefgh'
我想把它分成3个8个变量的字符串:
'abcdefgh','12345678' and 'abcdefgh'
但是我得到了一个3个字符串的列表:
['abcdefgh', '12345678', 'abcdefgh']
我该怎么做?你知道吗
在Python中,字符串的工作方式有点像数组。可以使用方括号([])将单个字母作为数组中的元素进行访问。这意味着你的问题可以这样解决:
[]
whole = 'abcdefgh12345678abcdefgh' part1 = whole[0:8] #abcdefgh part2 = whole[8:16] #12345678 part3 = whole[16:24] #abcdefgh
请注意,如果字符串短于24个字符,这将给您和索引越界错误。你知道吗
或者,如果您希望它直接在数组中,您可以这样做:
parts = [whole[0:8], whole[8:16], whole[16:24]]
但这有点重复。让我们找到一个更好的方法。你知道吗
parts = [whole[i*8:(i+1)*8] for i in range(len(whole)//8)]
这将为您提供whole8个字符长的部分,不管它有多长,只需忽略结尾处不适合完整8个字符块的任何额外部分。在一个24个字符的字符串的例子中,它会循环使用i等于0、1和2,给出与上面例子中完全相同的间隔。你知道吗
whole
i
s = 'abcdefgh12345678abcdefgh' import re a, b, c = re.findall("\w{8}", s) print(a, b, c) a, b, c = (s[i:i + 8] for i in range(0, len(s), 8)) print(a, b, c)
在Python中,字符串的工作方式有点像数组。可以使用方括号(
[]
)将单个字母作为数组中的元素进行访问。这意味着你的问题可以这样解决:请注意,如果字符串短于24个字符,这将给您和索引越界错误。你知道吗
或者,如果您希望它直接在数组中,您可以这样做:
但这有点重复。让我们找到一个更好的方法。你知道吗
这将为您提供
whole
8个字符长的部分,不管它有多长,只需忽略结尾处不适合完整8个字符块的任何额外部分。在一个24个字符的字符串的例子中,它会循环使用i
等于0、1和2,给出与上面例子中完全相同的间隔。你知道吗相关问题 更多 >
编程相关推荐