给出一个简单的地图:
combinations = {'a':11, 'b': 12, 'c': 13}
让我们在不同的行上打印条目:
print('Combinations: ', '\n'.join(str(c) for c in combinations.iteritems()))
..或者可能不是..
('Combinations: ', "('a', 11)\n('c', 13)\n('b', 12)")
为什么\n
不会被解释为换行符?
答案 0 :(得分:4)
你使用的是Python 2而不是Python 3,所以print
实际上是在打印一个元组。将元组转换为字符串会将repr
应用于其元素。
无论
切换到Python 3,
使用__future__
获取Python 2中的print函数,
from __future__ import print_function
或删除元组。
print 'Combinations: ', '\n'.join(str(c) for c in combinations.iteritems())
答案 1 :(得分:0)
我不确定这个问题,但是这不是print()或'\ n'的问题,请参阅以下示例:
print('first\nsecond\nthird')
first
second
third
如果要打印每个行的键值,可以执行以下操作
print('\n'.join(str(c[0]) + ": " + str(c[1]) for c in combinations.iteritems()))
a: 11
c: 13
b: 12