У меня есть список словарей и вы хотите итерации по клавишам, чтобы избежать символов xml. Мне нужно найти строки, содержащие символы, требующие xml escaping, обновить их и добавить их обратно в список словарей.xml excape form a python dictionary
Есть два ключа, которые необходимо проверить и обновить «имя» и «имя1».
Мой список выглядит следующим образом:
list: [{'level1': 3, 'code1': u'7000', 'name1': u'Donations received in the field', 'code': u'6100', 'name': u'Per diem', 'level': 3, 'balance': 0.0, 'balance1': -1986.9100000000001}, {'level1': 3, 'code1': u'7100', 'name1': u'Interest income', 'code': u'6101', 'name': u'Team living Expenses', 'level': 3, 'balance': 0.0, 'balance1': 0.0}, etc ... ]
Мой код до сих пор, но «ключ» переменная возвращает целое число и «Вэл» держит ключ ... (например: «level1») и он никогда не делает это в сокращении лямбда.
def get_lines(self,data):
if data['form']['export_format'] == 'xls':
for row in self.result_temp:
for key,val in row.items():
if key == 'name' or key == 'name1':
reduce(lambda s,r: s.replace(*r),
[('&', '&'),
('<', '<'),
('>', '>'),
("'", '''),
('"', '"')],
self.result_temp[row][val])
return self.result_temp
Вам не нужно перебирать все словарные статьи. Просто перебирайте ключи 'name',' name1'. – falsetru
Спасибо @falsetru ... не могли бы вы привести пример? – ardochhigh