如何在Python中处理嵌套循环?

如何在Python中处理嵌套循环?,python,loops,multidimensional-array,nested,Python,Loops,Multidimensional Array,Nested,我想处理嵌套循环。 这就是我所做的 num_list = [1, 2] alpha_list = ['a', 'b'] for number in num_list: print(number) for letter in alpha_list: print(letter) 这将输出: 1 a b 2 a b 但是我的期望输出是这样的: 1 a 2 b num_list = [1, 2] alpha_list = ['a', 'b'] for _ in r

我想处理嵌套循环。 这就是我所做的

num_list = [1, 2]
alpha_list = ['a', 'b']
for number in num_list:
    print(number)
    for letter in alpha_list:
        print(letter)
这将输出:

1
a
b
2
a
b
但是我的期望输出是这样的:

1
a
2
b
num_list = [1, 2]
alpha_list = ['a', 'b']

for _ in range(len(num_list)):
  print(num_list[_])
  print(alpha_list[_])

任何人都可以提出意见。谢谢

您可以使用zip:

num_list = [1, 2]
alpha_list = ['a', 'b']
for number,letter in zip(num_list,alpha_list):
    print(number)
    print(letter)

或:


下面的代码片段将为您提供所需的结果:

num_list = [1, 2]
alpha_list = ['a', 'b']
for i in range(len(num_list)):
    print(str(num_list[i])+str(alpha_list[i])) # Concatenate the elements of the two lists
您可以使用zip函数

对于zipnum_列表中的n,a,alpha_列表: 普林顿
当n或a中较短的一个停止时,zip停止。

要归档您的目标,您需要以下内容:

1
a
2
b
num_list = [1, 2]
alpha_list = ['a', 'b']

for _ in range(len(num_list)):
  print(num_list[_])
  print(alpha_list[_])
在您的示例中,您进入num_列表中的第一个项目,并在循环中遍历完整的第二个列表。然后是第二项,然后是整个第二个列表


所以,要在一个for循环中管理多个列表,您必须使用索引或类似的工具。

实际上,这是一个线性问题,嵌套循环在这里无效。您需要同时传递数组的每个元素

for i in range(len(num_list)):
    print(num_list[i], alpha_list[i], end='\n')
使用python zip函数更简单:

for pair in zip(num_list, alpha_list):
    print('\n'.join(map(str, pair)))

您可以将“\n”更改为字母和数字之间的任意分隔符。

嵌套循环针对外部循环的每个值运行,因此它不是用于预期输出的合适工具。