我有这个列表(asList),它是从一个文件中读取的,现在我需要用冒号分隔它,并创建新的列表列表
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循环之后
for i in asList:
print i.split(":")结果是这样的:
['green', 'g----', 'g', '', 'g\n']
['green', 'gr---', 'r', '', 'gr\n']
['green', 'gree-', 'e', '', 'gre\n']
['green', 'green', 'n', '', 'gren\n']现在我需要将这4个列表组合成一个包含4个元素的列表(每个列表都是一个元素),但是我不知道该怎么做。有人能帮帮我吗?谢谢
发布于 2014-03-19 21:10:28
您可以使用列表理解:
listOfLists = [i.split(":") for i in asList]或者更改for循环,您必须将它们附加到父列表中:
listOfLists = []
for i in asList:
listOfLists.append(i.split(":"))这两个都做了同样的事情。列表理解更简洁(我认为也更具可读性),如果您想在将子列表添加到listOfLists之前对子列表执行更多操作,则for循环会更灵活一些。
发布于 2014-03-19 21:17:54
看起来你已经读入了一个文件并且已经拆分了\n。为什么不呢
.read= open('foo',‘r’).replace(‘\n’,':').split(':')
https://stackoverflow.com/questions/22506815
复制相似问题