我有两个集合,一个是列表,另一个是不同长度的字典,如这些
list = [1,2,3,4,5,6]
dict = {'one':1,'two':2}
如何将它们打印为......
List Dictionary
1 one:1
2 two:2
3
4
5
6
任何人都能帮助我吗?
答案 0 :(得分:1)
使用您自己的名称覆盖内置名称是不好的做法。 'list'和'dict'都是Python中的内置类型,所以你不想通过为它们分配东西来搞乱这些名字。
还要记住,字典是Python中的无序数据结构。如果你想要订单,你必须使用OrderedDict来记住你插入元素的顺序。
from collections import OrderedDict
l = [1,2,3,4,5,6]
d = {'one':1,'two':2}
od = OrderedDict(sorted(d.items(), key=lambda x: x[1]))
print 'List'.ljust(9) + 'Dictionary'
rows = zip(l, od.items())
# Print elements matched with zip
for r in rows:
print str(r[0]).ljust(9) + repr(r[1])[1:-1].replace(', ', ':').replace(
'\'', '')
# Print any leftover unmatched elements in your list
for i in xrange(len(rows), len(l)):
print l[i]
输出:
List Dictionary
1 one:1
2 two:2
3
4
5
6