将列表转换为列表列表

Sam*_*eer 7 python list

我想将列表转换为列表列表.例:

my_list = ['banana', 'mango', 'apple']
Run Code Online (Sandbox Code Playgroud)

我想要:

my_list = [['banana'], ['mango'], ['apple']]
Run Code Online (Sandbox Code Playgroud)

我试过了:

list(list(my_list))
Run Code Online (Sandbox Code Playgroud)

Avi*_*Raj 19

使用列表理解

[[i] for i in lst]
Run Code Online (Sandbox Code Playgroud)

它迭代列表中的每个项目并将该项目放入新列表中.

例:

>>> lst = ['banana', 'mango', 'apple']
>>> [[i] for i in lst]
[['banana'], ['mango'], ['apple']]
Run Code Online (Sandbox Code Playgroud)

如果list对每个项目应用func,它会将每个字符串格式的项目转换为字符串列表.

>>> [list(i) for i in lst]
[['b', 'a', 'n', 'a', 'n', 'a'], ['m', 'a', 'n', 'g', 'o'], ['a', 'p', 'p', 'l', 'e']]
>>> 
Run Code Online (Sandbox Code Playgroud)

  • @khredos`map`将像`[list(i)for i in lst]`一样工作 (2认同)

Rak*_*mar 6

试试这个衬里:-

map(lambda x:[x], my_list)
Run Code Online (Sandbox Code Playgroud)

结果

In [1]: map(lambda x:[x], my_list)
Out[1]: [['banana'], ['mango'], ['apple']]
Run Code Online (Sandbox Code Playgroud)