使用拆分创建嵌套列表

时间:2017-05-12 08:19:04

标签: python list append

我有一些用户以下列格式输入到程序中的数字:

input = 4:-17:12:-23

我想用冒号分割它们,所以输出看起来像这样:

output = [[4], [-17], [12], [-23]]

我尝试了以下代码,但我没有得到我需要的输出。

output = []
input.strip()
input.split(':')
output.append(input)

print(output)

它只输出:

['4:-17:12:-23']

2 个答案:

答案 0 :(得分:3)

尝试:

>>> [[x] for x in map(int, input.split(':'))]
[[4], [-17], [12], [-23]]

以下解决方案是在@Chris_Rands发表评论后的动机。

>>> list(map(lambda x: [int(x)], data.split(':')))
[[4], [-17], [12], [-23]]

或者更好,只有list comprehension

>>> [[int(x)] for x in input.split(':')]
[[4], [-17], [12], [-23]]

答案 1 :(得分:1)

您可以在此处使用list comprehension

>>> [[int(i)] for i in input.split(':')]
[[4], [-17], [12], [-23]]