如何将长得像字典的列表转换为真正的字典?

ID:20599 / 打印

如何将长得像字典的列表转换为真正的字典?

将长得像字典的列表转换为字典

有些情况下,我们可能会遇到一个列表,其元素看起来像字典,但实际上不是字典。例如:

a = [{'ip': '123.181.150.193', 'port': 4241},      {'ip': '114.238.223.98', 'port': 4237},      {'ip': '114.233.50.103', 'port': 4257},      {'ip': '221.8.243.135', 'port': 4275},      {'ip': '183.147.208.157', 'port': 4234},      {'ip': '117.24.80.213', 'port': 4228},      {'ip': '111.127.117.242', 'port': 4285},      {'ip': '27.150.95.69', 'port': 4213},      {'ip': '114.238.197.108', 'port': 4247},      {'ip': '49.74.57.244', 'port': 4268}]

为了将此列表有效地转换为字典,我们可以使用以下步骤:

  1. 提取列表中所有 ip 地址并将其存储在一个单独的列表中:
l_1 = [x['ip'] for x in a]
  1. 提取列表中所有端口并将其存储在另一个单独的列表中:
l_2 = [x['port'] for x in a]
  1. 使用 dict(zip(l_1, l_2)) 创建字典,其中 l_1 是 ip 地址列表,l_2 是端口列表:
result = dict(zip(l_1, l_2))

执行这些步骤后,result 将是一个字典,密钥是 ip 地址,值是相应的端口:

{'123.181.150.193': 4241,  '114.238.223.98': 4237,  '114.233.50.103': 4257,  '221.8.243.135': 4275,  '183.147.208.157': 4234,  '117.24.80.213': 4228,  '111.127.117.242': 4285,  '27.150.95.69': 4213,  '114.238.197.108': 4247,  '49.74.57.244': 4268}
上一篇: Selenium浏览器中响应头修改插件失效,如何排查?
下一篇: Synchronized 变量在不同操作系统的不同行为

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。