1

我有一个这样的列表:

l = ['a,b,c,d' , 'a,b,c,d', 'a,b,c,d', 'a,b,c,d']

我想使它的列表格式如下:

l = [['a,b,c,d'],['a,b,c,d'],['a,b,c,d'],['a,b,c,d']]

甚至四个单独的列表也可以,但我希望基本上能够遍历每个子列表中的每个元素。这是我到目前为止所拥有的:

for string in range(0, len(userlist)):
    small_list = userlist[string:]
    print(small_list)

但是,这不会将列表分成我想要的列表。我在想我必须将列表分成 4 块。

4

4 回答 4

4

您可以通过列表理解来做到这一点:

l = [s.split(",") for s in l]
# result: [['a', 'b', 'c', 'd'], ['a', 'b', 'c', 'd'], ['a', 'b', 'c', 'd'], ['a', 'b', 'c', 'd']]
于 2013-08-01T02:09:16.213 回答
2

您可以使用它来获取字符列表的列表:

l = [str.split(",") for str in l]
# prints out [['a', 'b', 'c', 'd'], ['a', 'b', 'c', 'd'], ['a', 'b', 'c', 'd'], ['a', 'b', 'c', 'd']]

或者如果您不想将字符串拆分为字符,请执行以下操作:

l = [[str] for str in l]
# prints out [['a,b,c,d'], ['a,b,c,d'], ['a,b,c,d'], ['a,b,c,d']]
于 2013-08-01T02:09:56.877 回答
0

尝试这个-

result = [[each] for each in l]
于 2013-08-01T02:15:56.953 回答
0
map(lambda x:[x], l)

output:
[['a,b,c,d'], ['a,b,c,d'], ['a,b,c,d'], ['a,b,c,d']]
于 2013-08-01T05:27:47.913 回答