[英]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.