首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将这些列表合并到一个列表中?

如何将这些列表合并到一个列表中?
EN

Stack Overflow用户
提问于 2014-03-19 21:07:10
回答 2查看 81关注 0票数 2

我有这个列表(asList),它是从一个文件中读取的,现在我需要用冒号分隔它,并创建新的列表列表

代码语言:javascript
复制
asList =  ['green:g----:g::g\n', '\n', 'green:gr---:r::gr\n', '\n', 'green:gree-:e::gre\n', '\n', 'green:green:n::gren\n', '\n']

在此for循环之后

代码语言:javascript
复制
for i in asList:
    print i.split(":")

结果是这样的:

代码语言:javascript
复制
['green', 'g----', 'g', '', 'g\n']
['green', 'gr---', 'r', '', 'gr\n']
['green', 'gree-', 'e', '', 'gre\n']
['green', 'green', 'n', '', 'gren\n']

现在我需要将这4个列表组合成一个包含4个元素的列表(每个列表都是一个元素),但是我不知道该怎么做。有人能帮帮我吗?谢谢

EN

回答 2

Stack Overflow用户

发布于 2014-03-19 21:10:28

您可以使用列表理解:

代码语言:javascript
复制
listOfLists = [i.split(":") for i in asList]

或者更改for循环,您必须将它们附加到父列表中:

代码语言:javascript
复制
listOfLists = []
for i in asList:
    listOfLists.append(i.split(":"))

这两个都做了同样的事情。列表理解更简洁(我认为也更具可读性),如果您想在将子列表添加到listOfLists之前对子列表执行更多操作,则for循环会更灵活一些。

票数 4
EN

Stack Overflow用户

发布于 2014-03-19 21:17:54

看起来你已经读入了一个文件并且已经拆分了\n。为什么不呢

.read= open('foo',‘r’).replace(‘\n’,':').split(':')

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22506815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档