Python字符串列表转换

我有string这样的

sample="[2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 42, 46, 50]"

我如何将其转换为list?我期望输出像这样

output=[2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 42, 46, 50]

我知道split()功能,但在这种情况下,如果我使用

sample.split(',')

它将使用[]符号。有什么简单的方法吗?


MM们
浏览 155回答 2
2回答

料青山看我应如是

您可以在python中使用标准的字符串方法:output = sample.lstrip('[').rstrip(']').split(', ')如果使用.split(',')代替,.split(',')您将获得空格和值!您可以使用以下方法将所有值转换为int:output = map(lambda x: int(x), output)或将您的字符串加载为json:import json output = json.loads(sample)巧合的是,json列表与python列表具有相同的符号!:-)

Qyouu

如果要处理类似Python的类型(例如元组),则可以使用ast.literal_eval:from ast import literal_evalsample="[2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 42, 46, 50]"sample_list = literal_eval(sample)print type(sample_list), type(sample_list[0]), sample_list# <type 'list'> <type 'int'> [2, 6, 10, 14, 18, 22, 26, 30, 34, 38, 42, 46, 50]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python