如何在python 2.7.11中从现有列表的每个项目创建列表?

如何在python 2.7.11中从现有列表的每个项目创建列表?,第1张

概述我试图从 python中的列表元素生成列表. 例如:有一个包含以下信息的列表:  list = [‘AB4′,’AB3′,’AC3′,’BC4′,’BC5’] 这是列表元素的确切格式. 我希望为每个元素创建列表,为字母分开(将两个字母都视为一个块)并为数字分开,这将包含字符串中缺少的字符.这就是我的意思: AB:['4', '3'] AC:['3'] BC:['4', '5'] 4:['AB 我试图从 python中的列表元素生成列表.
例如:有一个包含以下信息的列表:
 List = [‘AB4′,’AB3′,’AC3′,’BC4′,’BC5’]
这是列表元素的确切格式.
我希望为每个元素创建列表,为字母分开(将两个字母都视为一个块)并为数字分开,这将包含字符串中缺少的字符.这就是我的意思:

AB:['4','3'] AC:['3'] BC:['4','5'] 4:['AB','BC'] 3:['AB','AC'] 5:['BC']

这些是我应该从原始列表生成的列表.原始列表的元素没有限制,其格式与示例“两个字母和数字”完全相同.

先感谢您.

解决方法 这样做:

from collections import defaultdictl=['AB4','AB3','AC3','BC4','BC5']result=defaultdict(List)for item in l:      #If you want numbers to be numbers and not strings replace item[2:] with int(item[2:])      result[item[:2]].append(item[2:])    result[item[2:]].append(item[:2])

您可以根据需要使用它来打印它:

import pprintpp = pprint.PrettyPrinter()pp.pprint(result)

输出:

{'3': ['AB','AC'],'4': ['AB','BC'],'5': ['BC'],'AB': ['4','3'],'AC': ['3'],'BC': ['4','5']}
总结

以上是内存溢出为你收集整理的如何在python 2.7.11中从现有列表的每个项目创建列表?全部内容,希望文章能够帮你解决如何在python 2.7.11中从现有列表的每个项目创建列表?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1193662.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存