如何从列表中字典的字符串值中删除字符?
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
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