所以我无法打印出我创建的列表中的两个值。
基本上我做了一个列表:
[
{
'Numbers': '1',
'Name': 'Hello'
},
{
'Numbers': '2',
'Name': 'There'
},
{
'Numbers': '3',
'Name': 'Stack'
},
{
'Numbers': '4',
'Name': 'OVerflow'
}
]
现在如果我基本上调用那个函数是
名字_数字()
它会给我那个值。
所以你当然会使用 for 循环,它会自己打印每一个,所以在这种情况下,循环看起来像:
对于我在 names_number() 中: 打印(i)
那会给我:
{'Numbers': '1', 'Name': 'Hello'}
{'Numbers': '2', 'Name': 'There'}
{'Numbers': '3', 'Name': 'Stack'}
现在的问题是我只想打印出来
1 Hello
2 There
3 Stack
而且我不知道在那种情况下每次 for 循环时我将如何只打印出每一个的值。我将不胜感激关于如何继续像上面希望的那样输出的任何提示或解决方案
最佳答案
print
的默认分隔符是一个空格,所以你使用一个简单的 for
循环:
for d in L:
print(d['Numbers'], d['Name'])
或使用 f 字符串(Python 3.6+):
for d in L:
print(f"{d['Numbers']} {d['Name']}")
这是一个复杂的函数式解决方案:
from operator import itemgetter
fields = ('Numbers', 'Name')
print(*(f'{num} {name}' for num, name in map(itemgetter(*fields), L)), sep='\n')
1 Hello
2 There
3 Stack
4 OVerflow
关于python - 如何打印出两个键的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52990047/