如何更改列表内字典中的字符串键| python3.6
我想将密钥名“user\u id”更改为“sender”,例如:如何更改列表内字典中的字符串键| python3.6,python,python-3.x,list,dictionary,key,Python,Python 3.x,List,Dictionary,Key,我想将密钥名“user\u id”更改为“sender”,例如: [{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 1, 'user_id': 1000000}, {'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 2, 'user_id': 1000000}, {'chat_id': 'e3c2b14ded7a32c41bf01
[{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 1,
'user_id': 1000000},
{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 2,
'user_id': 1000000},
{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 3,
'user_id': 1000000},
{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 4,
'user_id': 1000000}]
致:
我该怎么办?只需在数据上循环,并适当地更改分配给
'sender'
输入您从'user\u id'
获得的信息:
for d in data:
d['sender'] = d.pop('user_id')
只需在数据上循环,并适当地更改分配给
'sender'
输入您从'user\u id'
获得的信息:
for d in data:
d['sender'] = d.pop('user_id')
没有循环怎么办? 单线解决方案:
list(map(lambda x:x.__setitem__('sender',x.pop('user_id')),your_data))
数据如下:
your_data=[{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 1,
'user_id': 1000000},
{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 2,
'user_id': 1000000},
{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 3,
'user_id': 1000000},
{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 4,
'user_id': 1000000}]
输出:
[{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 1, 'sender': 1000000}, {'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 2, 'sender': 1000000}, {'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 3, 'sender': 1000000}, {'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 4, 'sender': 1000000}]
没有循环怎么办? 单线解决方案:
list(map(lambda x:x.__setitem__('sender',x.pop('user_id')),your_data))
数据如下:
your_data=[{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 1,
'user_id': 1000000},
{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 2,
'user_id': 1000000},
{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 3,
'user_id': 1000000},
{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3',
'message_id': 4,
'user_id': 1000000}]
输出:
[{'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 1, 'sender': 1000000}, {'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 2, 'sender': 1000000}, {'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 3, 'sender': 1000000}, {'chat_id': 'e3c2b14ded7a32c41bf0186b6172d8e3', 'message_id': 4, 'sender': 1000000}]
哇!通常,在有人发布简单的循环解决方案之前,至少有五个人发布列表/目录理解:-)@StefanPochmann关于文档链接,改变了这一点。尽管dict.pop从2改为3:)哇。。。通常,在有人发布简单的循环解决方案之前,至少有五个人发布列表/目录理解:-)@StefanPochmann关于文档链接,改变了这一点。尽管几乎没有关于dict.pop的内容从2改为3:)