0
我在python2.7中有以下問題。我想有一個模板字典像這樣:Python dictonary帶有字符串佔位符和默認值
my_dict = {
'key_1' : %(key_1)s,
'key_2' : %(key_2)s,
}
,我想用這樣的:
new_dict = my_dict % {'key_1': 'something', 'key_2': 'anything'}
但這引發異常:
TypeError: unsupported operand type(s) for %: 'dict' and 'dict'
我問題有兩點:
- 是否有任何方式或結構,最好是字典,以實現這一點:
- 考慮到有,是否有一種方法來默認值,如果沒有值傳遞?
我的意思,2是:
my_dict = {
'key_1' : %s or None, # if no value is interpolated at key 'key_1'
}
我很困惑你的問題。這是無效的Python代碼:'my_dict = {'key_1':%(key_1)s,'key_2':%(key_2)s,}'。這也不是:'my_dict%{'key_1':'某事','key_2':'任何'}'。你能否更多地解釋你想完成什麼(可能爲什麼)? –
'blah-blah%values'已棄用,請嘗試使用'str.format(..)'而不是 – akaRem