如何从列表中字典的字符串值中删除字符?

How to delete characters from string values of dictionaries in list?

 litofdict = [{'name': 'Mike', 'surname':'Mikeson', 'age':'15\n'},{'name': 'John', 'surname':'Johnson', 'age':'15\n'},{'name': 'Tomy', 'surname':'Tomson', 'age':'19'}]

如何仅在它们存在时才删除它们(我不确定如何检查)和return一个列表仅由“从”的“\n”中清除的值组成字典?谢谢 :)

with open("name.txt") as file:
    for l in file:
        listofdict.append(dict(zip(['name','surname','age']), l.split('|'))))
return listofdict

您可以遍历 dict.items()strip 值以删除回车符 return,然后使用列表理解对每个 dict

>>> [{key: val.strip() for key, val in i.items()} for i in listofdict]
[{'surname': 'Mikeson', 'age': '15', 'name': 'Mike'},
 {'surname': 'Johnson', 'age': '15', 'name': 'John'},
 {'surname': 'Tomson', 'age': '19', 'name': 'Tomy'}]

如果没有看到你的文件很难说,但你可以通过调整你的文件阅读来做到这一点而无需任何后处理

with open("name.txt") as file:
    listofdict = [dict(zip(['name','surname','age']), l.strip().split('|')) for l in file]
    return listofdict