首页 > 解决方案 > 如何在for循环变量中分配两个值

问题描述

我们如何使用 for 循环从字符串中分配两个值,如下所示

string="abcd"
for i in string:
      print(i)

这将给我一个字符串中的值

#output
a
b
c
d

我怎样才能取两个值,如 ab 和 cd。我知道我们可以在打印中做到这一点,但我需要在“i”中分配两个值我需要输出

#output
ab
cd

标签: pythonpython-3.x

解决方案


您可以使用列表理解,如下所示:

n = 2
s = "abcd"
res = [s[i:i+n] for i in range(0, len(s), n)]
print(res) # ['ab', 'cd']

这适用于任何n地方。

如果你只需要 2 个字符,你也可以使用正则表达式,但如果它n不方便,一个例子n=2是:

import re
s = "abcd"
res = re.findall('..?',s)
print(res) # ['ab', 'cd']

推荐阅读