Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在循环中将字符串分组为3(python)_Python_Loops - Fatal编程技术网

在循环中将字符串分组为3(python)

在循环中将字符串分组为3(python),python,loops,Python,Loops,我有一个九个字符的字符串,需要在循环中对三个字符的组执行操作 如何在python中实现这一点?最简单的方法: >>> s = "123456789" >>> for group in (s[:3], s[3:6], s[6:]): print group ... 123 456 789 在更一般的情况下,请查看:最简单的方法: >>> s = "123456789" >>> for group in (s[:3], s[3

我有一个九个字符的字符串,需要在循环中对三个字符的组执行操作

如何在python中实现这一点?

最简单的方法:

>>> s = "123456789"
>>> for group in (s[:3], s[3:6], s[6:]): print group
...
123
456
789
在更一般的情况下,请查看:

最简单的方法:

>>> s = "123456789"
>>> for group in (s[:3], s[3:6], s[6:]): print group
...
123
456
789

在更一般的情况下,请看:

可能是这样的

>>> a = "123456789"
>>> for grp in [a[:3], a[3:6], a[6:]]:
    print grp
当然,如果你需要概括

>>> def split3(aString):
        while len(aString) > 0:
                yield aString[:3]
                aString = aString[3:]


>>> for c in split3(a):
        print c

也许是这样的

>>> a = "123456789"
>>> for grp in [a[:3], a[3:6], a[6:]]:
    print grp
当然,如果你需要概括

>>> def split3(aString):
        while len(aString) > 0:
                yield aString[:3]
                aString = aString[3:]


>>> for c in split3(a):
        print c
或者你可以使用itertools

import itertools
def grouper(n, iterable):
    args = [iter(iterable)] * n
    return itertools.izip_longest(*args)

for i in grouper(3,"o my gosh"):
    print i
输出

$ ./python.py
('o', ' ', 'm')
('y', ' ', 'g')
('o', 's', 'h')
或者你可以使用itertools

import itertools
def grouper(n, iterable):
    args = [iter(iterable)] * n
    return itertools.izip_longest(*args)

for i in grouper(3,"o my gosh"):
    print i
输出

$ ./python.py
('o', ' ', 'm')
('y', ' ', 'g')
('o', 's', 'h')

+我喜欢更清晰的胸部,但这是个人品味的问题。+1在上弦时不会比在上弦时看起来更好。
可能:-)我更喜欢更清晰的胸部,但这是个人品味的问题。+1在上弦时不会比在上弦时看起来更好。
可能:-)我更喜欢更清晰的胸部,但这是个人喜好的问题。-1:这不会像预期的那样适用于所有字符串:textwrap.wrap(“我是sam!”,3)=[“我”、“是”、“sam',!”]-1:这不会像预期的那样适用于所有字符串:textwrap.wrap(“我是sam!”,3)=[“我”、“是”、“sam',!”