如何在Python 2.7中格式化一个tupled列表?

时间:2015-04-09 01:07:28

标签: python python-2.7 format

我在这里问了一个上一个问题并得到了一个很好的答案:如何在嵌套列表中自动为Python 2.7中的变量分配一个变量?在提出输出时要做以下事情:

上一个问题:

nList = [[0,0,0],[3,2,1]],\ [[]],\ [[100,1000,110]],\ [[0,0,0],[300,400,300],[300,400,720],[0,0,120],[100,0,1320],[30,500,1450]] 
  

我需要在每个项目之前为项目分配自动变量。\#39; \#39;。对于   例如,distance1 = [[0,0,0],[3,2,1]],distance2 = [[]],distance3 =   [[100,1000,110]]等。但是,这需要每个都是自动的   距离' N'而不是我从mList和分配中获取索引   他们到可变距离' n

现在,我需要格式化distanceN变量,以便尝试打印distance4例如输出:

>>0 metres, 0 metres, 0 seconds
>>300 metres, 400 metres, 300 seconds
>>300 metres, 400 metres, 720 seconds
>>0 metres, 0 metres, 120 seconds
>>100 metres, 0 metres, 1320 seconds
>>30 metres, 500 metres, 1450 seconds

非常感谢任何帮助。谢谢。

1 个答案:

答案 0 :(得分:1)

无需将nList转换为任何内容;不是命名变量,不是字典。它作为一个元组工作正常(顺便说一句,不是一个列表 - 它是一个列表元组)。您可以将其命名为distances

distances = [[0,0,0],[3,2,1]], [[]], [[100,1000,110]], [[0,0,0],[300,400,300],[300,400,720],[0,0,120],[100,0,1320],[30,500,1450]]

# "distance4" accessed by index 3 in tuple
for distance in distances[3]:
    print '{} metres, {} metres, {} seconds'.format(*distance)

<强>输出

0 metres, 0 metres, 0 seconds
300 metres, 400 metres, 300 seconds
300 metres, 400 metres, 720 seconds
0 metres, 0 metres, 120 seconds
100 metres, 0 metres, 1320 seconds
30 metres, 500 metres, 1450 seconds