问题描述
我试过了:
l = ['cat','dog','fish']
ll = [list(x) for x in l]
print(ll)
我得到了这个
[['c','a','t'],['d','o','g'],['f','i','s','h']]
我需要的是
[['cat'],['dog'],['fish']]
解决方法
而不是简单地调用 list
构造函数(将字符串分解为其字符):
ll = [[x] for x in l]
对于 l
的元素的每次迭代,这将创建一个嵌套列表,其中包含单个项目 x
。
你可以试试这个:
l = ['cat','dog','fish']
ll = [[x] for x in l]
print(ll)
这会将每个元素转换为数组。您使用 list()
函数所做的是将单词转换为 字符 数组。
只返回一个列表而不是拆分字符串:
l = ['cat','fish']
ll = [[x] for x in l]
print(ll)
,
如果您要查找的输出实际上是
[['cat'],['dog'],['fish']]
那么上面提供的解决方案是使用方括号包装器进行列表推导:
l = ['cat','fish']
ll = [[x] for x in l]
print(ll)
输出:
[[cat],[dog],[fish]]
但是,如果您要查找的输出与您在帖子中显示的完全相同,则您需要使用格式化的字符串:
l = ['cat','fish']
ll = f"[[{'] ['.join(l)}]]"
print(ll)
输出:
[[cat],[fish]]