[英]Python string format() function using zero in the syntax to reference dictionary
我正在阅读有关更高级输出格式的Python文档,并且它们的示例代码令人困惑。 在下面的代码中:
table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678}
print('Jack: {0[Jack]:d}; Sjoerd: {0[Sjoerd]:d}; Dcab: {0[Dcab]:d}'.format(table))
Jack: 4098; Sjoerd: 4127; Dcab: 8637678
0
在{0[Jack]:d}
和{0[Sjoerd]:d}
中指的是什么。 本教程的说明省略了有关这些零的功能的任何提示。 这个关于格式化字符串的视频教程使用相同的语法,但也没有清楚地解释它!
如果我将1
替换为0
,则会出现错误:
IndexError: tuple index out of range
tuple
与它有什么关系?
摘自文档:
如果您不想拆分很长的格式字符串,那么最好引用要按名称而不是按位置格式化的变量。 这可以通过简单地传递字典并使用方括号“ []”来访问键来完成。
您可以使用:
table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678}
print('Jack: {Jack}; Sjoerd: {Sjoerd}; Dcab: {Dcab}'.format(**table))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.