我是新來的Python,只是閱讀下面的部分用Python文檔6.1.3. Format String Syntax:什麼是有效的密鑰根據Python的str.format()文檔
Because arg_name is not quote-delimited, it is not possible to specify arbitrary dictionary keys (e.g., the strings '10' or ':-]') within a format string.
這是什麼意思?有人可以給我任何例子嗎?這是否意味着格式字符串中的所有數字都是位置參數?所以'10'是第10個參數?對於': - ]',這是因爲它有']'嗎?我也看過這個post。
另一個問題是從崗位:
dictionary = {'key1': 'val1', '1': 'val2'}
string1 = 'Interpolating {0[key1]}'.format(dictionary)
print string1
爲什麼它不是{0 「鍵1」]}?密鑰'key1'是一個字符串,但如果使用「key1」,這是一個錯誤。一個正常的字典索引應該是字典['key1'],而不是 字典[key1]
就像@BrenBarn在該帖子中回覆的,如果使用數字1作爲字典中的鍵,它可以工作。
dictionary = {'key1': 'val1', 1: 'val2'}
string2 = 'Interpolating {0[1]}'.format(dictionary)
print string2
所以我很困惑什麼有效的index_string在格式字符串中。
謝謝,
我發現這是一個有價值的資源:https://pyformat.info/#getitem_and_getattr – LJGibbs
«顯式優於隱式»我一直提取格式化字符串之外的任何值,除非它明顯死亡。 – 9000