划分列表并将列表附加到单独的列表python

Posted

技术标签:

【中文标题】划分列表并将列表附加到单独的列表python【英文标题】:Divide list and append the list to separate lists python 【发布时间】:2013-07-23 18:56:22 【问题描述】:

我有一个要分成两部分的列表,然后每个部分都必须写入不同的列表。我试过的代码在这里,它工作正常。

import sys
a = ['name','2',3,4,5,'a','b','c','d',10,4,'lol','3']
print len(a)
list1 =[]
list2 = []
for i in xrange(0, (len(a)/2)):
    list1.append(a[i])
    list2.append(a[(i)+((len(a)/2))])
list2.append(a[(len(a))-1])
print list1
print list2

我想知道是否有其他更好的替代方法可以做到这一点..

【问题讨论】:

【参考方案1】:

使用Python slice notation:

a = ['name', '2', 3, 4, 5, 'a', 'b', 'c', 'd', 10, 4, 'lol', '3']
n = len(a)
print(n)
mid = n // 2
list1, list2 = a[:mid], a[mid:]
print(list1)
print(list2)

【讨论】:

【参考方案2】:
a = ['name','2',3,4,5,'a','b','c','d',10,4,'lol','3']
mid = len(a)//2
list1, list2=a[:mid], a[mid:]


>>> list1
['name', '2', 3, 4, 5, 'a']
>>> list2
['b', 'c', 'd', 10, 4, 'lol', '3']

与答案 1 非常相似,但更短且更快

【讨论】:

以上是关于划分列表并将列表附加到单独的列表python的主要内容,如果未能解决你的问题,请参考以下文章

使用列表保存数据并将数据附加到列表作为安全网,python

在python中比较两个列表,并将结果保存在一个单独的列表中。

重复附加到一个大列表(Python 2.6.6)

如何在 Python 3 中从磁盘读取和编辑列表?

在 Python 2.7.3 中将 csv 文件附加到一个空列表中 - 获取一个空列表

Python:将 a 附加到字典中的列表