試圖將名爲'number'的所有元素替換爲數據列表中的'numbr',但沒有使其工作。用python替換列表中的字符串
編輯:所以每個關鍵號碼應重新命名爲numbr。價值觀保持原樣。
我在做什麼錯?
謝謝你的幫助!
data = [{'address': {
'city': 'city A',
'company_name': 'company A'},
'amount': 998,
'items': [{'description': 'desc A1','number': 'number A1'}],
'number': 'number of A',
'service_date': {
'type': 'DEFAULT',
'date': '2015-11-18'},
'vat_option': 123},
{'address': {
'city': 'city B',
'company_name': 'company B'},
'amount': 222,
'items': [{'description': 'desc B1','number': 'number B1'},
{'description': 'desc B2','number': 'number B2'}],
'number': 'number of B',
'service_date': {
'type': 'DEFAULT',
'date': '2015-11-18'},
'vat_option': 456}
]
def replace(l, X, Y):
for i,v in enumerate(l):
if v == X:
l.pop(i)
l.insert(i, Y)
replace(data, 'number', 'numbr')
print data
它應該只重命名鍵?發佈預期結果 – RomanPerekhrest
這就是結果 - 如你所見,沒有變化: [{'vat_option':123,'items':[{'description':'desc A1','number':'number A1 '']],'number':'A的數量','amount':998,'address':{'city':'city A','company_name':'company A'},'service_date':{ date':'2015-11-18','type':'DEFAULT'}},{'vat_option':456,'items':[{'description':'desc B1','number':'number B1 '',{'description':'desc B2','number':'number B2'}],'number':'B的數量','amount':222,'address':{'city':'城市B','company_name':'公司B'},'service_date':{'date':'2015-11-18','type':'DEFAULT'}}] – thowi
我要求**預計**結果,不是實際的 – RomanPerekhrest