打印嵌套列表,以便列表中的每个列表位于不同的列中

时间:2012-11-07 16:43:16

标签: python list nested

我有以下代码

F_list= []
C_list= []
C_approx_list = []
for F in range(0,101,10):
    F_list.append(F)
    C_approx_list.append((F-30)/2.)
    C_list.append((F-32)*(5./9))

conversion = [F_list,C_approx_list,C_list]

for list in conversion:
    for number in list:
        print number

使用以下输出:

"""Test Execution
Terminal > python exercise2_18.py
0
10
20
30
40
50
60
70
80
90
100
-15.0
-10.0
-5.0
0.0
5.0
10.0
15.0
20.0
25.0
30.0
35.0
-17.7777777778
-12.2222222222
-6.66666666667
-1.11111111111
4.44444444444
10.0
15.5555555556
21.1111111111
26.6666666667
32.2222222222
37.7777777778
"""

我希望这三个列表改为以下形式:

F_list C_approx C_list

而不是:

  1. F_list
  2. C_approx
  3. C_list
  4. 感谢任何可能的答案!

2 个答案:

答案 0 :(得分:3)

for a,b,c in zip(F_list, C_approx_list, C_list)
    print(a,b,c)

或者对于可能更容易阅读的输出

for a,b,c in zip(F_list, C_approx_list, C_list)
    print('{}\t{}\t{}'.format(a,b,c))

或更简单的Python 3.X

for a,b,c in zip(F_list, C_approx_list, C_list)
    print(a,b,c, sep='\t')

答案 1 :(得分:1)

你可以使用列表理解来写这个:

conversion = [(F, (F-30)/2., (F-32)*(5./9)) for F in range(0,101,10)]

for line in conversion:
    print temp[0], temp[1], temp[2]
    # print(*temp)                           # in python3

您可以使用zip

移至上一个列表
F_list, C_approx_list, C_list = zip(*conversion)