将两个python列表连接在一起以创建日志文件

时间:2014-05-28 15:45:39

标签: python list

我有一个程序,我计算一些值,而不是有30个打印语句,我想让代码更整洁,更容易维护。

将描述和实际值存储在两个单独的列表中,并将它们连接到程序末尾的日志文件中进行打印。

我将提供一个使用两个列表的示例:

description = ["name","phone","height"]
value = ["john","0431599430","160"]

我想打印:

name: john
phone: 0431....
height: 160

我的代码:

for i in value:
    d = description(i);
    v = value(i);
    add = str(d) + ": " + str(v);
    print add

更新 - 感谢大家的回复,我已经看到了这个,另一种可能的解决方案:

d = ["digit","code","symbol"]
v = [1,2,3]

for i in range(len(d)):
    print (d[i],v[i])

打印时看起来像这样:

('digit', 1)
('code', 2)
('symbol', 3)

我可以使用replace删除()和'',所以它看起来像下面,但是是什么导致两个列表在第一个周围打印出额外的东西()''地方是我不明白的地方?

digit 1
code 2
symbol 3

2 个答案:

答案 0 :(得分:5)

使用zip组合两个列表。一种可能性:

for f, v in zip(description, value):
    print "{0}: {1}".format(f, v)

答案 1 :(得分:1)

您可以使用zip执行此操作:

d = ["name","phone","height"]
v = ["john","0431599430","160"]

print '\n'.join(': '.join(i) for i in zip(d,v))

[OUTPUT]
name: john
phone: 0431599430
height: 160