Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.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

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
Python 如何合并两个for循环_Python_Loops_Python 3.x - Fatal编程技术网

Python 如何合并两个for循环

Python 如何合并两个for循环,python,loops,python-3.x,Python,Loops,Python 3.x,我有两个for循环需要合并。我在这件事上花了一个小时左右。 我试着把一个函数变成一个函数,然后把它加到另一个函数中,但无法破解它 数组: stooges = [('Curly',35,'New York'),('Larry',33,'Pennsylvania'),('Moe',40,'New York')] 第一个循环: for item in stooges: print ("Stooge: {0} {2} {1} ".format(item[0],item[1],item[2]))

我有两个for循环需要合并。我在这件事上花了一个小时左右。 我试着把一个函数变成一个函数,然后把它加到另一个函数中,但无法破解它

数组:

stooges = [('Curly',35,'New York'),('Larry',33,'Pennsylvania'),('Moe',40,'New York')]
第一个循环:

for item in stooges:
    print ("Stooge: {0} {2} {1} ".format(item[0],item[1],item[2]))
第二个循环:

for i, val in enumerate(stooges, start=1):
    print ("Stooge", + i)
我需要的输出格式如下:

Stooge 1: Curly New York 35 
Stooge 2: Larry Pennsylvania 33
Stooge 3: Moe New York 40
最接近我的是:

for i, val in enumerate(stooges, start=1):
    for item in stooges:
        print ("Stooge", + i, "{0} {2} {1} ".format(item[0],item[1],item[2]))

你不需要两个for循环

for index, stooge in enumerate(stooges, start=1):
    name, age, city = stooge
    print 'Stooge %d: %s %s %d' % (index, name, city, age)

你不需要两个for循环

for index, stooge in enumerate(stooges, start=1):
    name, age, city = stooge
    print 'Stooge %d: %s %s %d' % (index, name, city, age)

但是您确实需要
start=1
,否则,
Curly
就是stooge 0,这不是所需的输出。另外,您为什么建议从
{}
格式转换为
%
格式?@abarnert没错。非常感谢。从
{}
切换到
%
有什么不对?如果OP有他编写并理解的工作代码,为什么要给他不同的代码来做同样的事情,而不做任何解释?为什么不修复他代码中损坏的部分,而不处理其余部分?
format
是新代码的推荐格式化操作。对于新代码,不鼓励使用
%
。但是您确实需要
start=1
,否则,
Curly
就是stooge 0,这不是所需的输出。此外,您为什么建议从
{}
格式转换为
%
格式?@abarnet没错。非常感谢。从
{}
切换到
%
有什么不对?如果OP有他编写并理解的工作代码,为什么要给他不同的代码来做同样的事情,而不做任何解释?为什么不修复他代码中损坏的部分,而不处理其余部分?
format
是新代码的推荐格式化操作。对于新代码,不鼓励使用
%
。我将OP原始代码中的
start=
关键字名称放回原处,因为我认为这样对他(甚至未来的读者)来说会更清楚。我把OP的原始代码中的
start=
关键字名称放回原处,因为我认为这样他(甚至未来的读者)会更清楚。但除此之外,答案很好。
for i, (n, a, c) in enumerate(stooges):
    print 'Stooge %d: %s %s %d' % (i + 1, n, c, a)

Stooge 1: Curly New York 35
Stooge 2: Larry Pennsylvania 33
Stooge 3: Moe New York 40