У меня есть файл с несколькими словарями, по одному в каждой строке. Все они имеют одинаковые ключи. Я хочу переименовать один ключ из «id» в «orderid» во всех них. Каков наиболее эффективный способ сделать это?Переименование ключа в нескольких словарях
Образец данных:
{'total_ex_tax': '11.0000', 'is_deleted': False, 'status_id': 5, 'id': 614534}
{'total_ex_tax': '100.0000', 'is_deleted': False, 'status_id': 5, 'id': 614535}
код до сих пор:
def popAndMergeDicts(dicts):
dictLine = ast.literal_eval(dicts)
tempDict = dictLine['billing_address']
del dictLine['billing_address']
for i in tempDict:
dictLine[i] = tempDict[i]
# insertOrdersInDatabase(dictLine)
rename_id(dictLine)
return dictLine
def rename_id(dictionary):
pass
def process_orders_file(filename):
lines = tuple(open(filename))
for line in lines[0:]:
popAndMergeDicts(line)
process_orders_file('allOrdersData')
Вы хотите редактировать литеральный текст в файле? Или вы хотите изменить имя динамически во время выполнения? Если да, то почему? – Dannnno
У вашего текстового редактора, вероятно, есть функция поиска и замены, или вы можете изменить его во время выполнения, распечатать в файл, а затем скопировать вставку. – Dannnno
Действительно ли это json? –