为什么会这样:
data = {'first': 'Hodor', 'last': 'Hodor!'}
print('{first} {last}'.format(**data))
这有效:
bdays = {
'Wesley Neill': 'January 6, 1985',
'Victoria Neill': 'August 25, 1992',
'Heather Neill': 'June 25, 1964'
}
print('\n {} \n {} \n {}'.format(*bdays))
但这不起作用:
print('\n {} \n {} \n {}'.format(**bdays))
Traceback (most recent call last):
File "C:/Users/wesle/PycharmProjects/practicepython/birthdays.py", line 9, in <module>
print('We have the following names in our dictionary: \n {} \n {} \n {} \n'.format(**bdays))
IndexError: tuple index out of range
第一个示例在占位符大括号中包含字典键,并在参数中使用 **kwargs。
第二个没有键,在 .format() 参数中只有一个星号。
第三个在占位符中没有键,如示例 1 所示,但它确实在参数中使用了 **kwargs。
我知道我需要做些什么才能使事情正常进行,但我对这里的微妙之处感到好奇。
肥皂起泡泡
精慕HU
相关分类