如何将字符串形式的列表转换为整数列表?
把字符串形式的列表转为整数列表的几种方法
嘿,这个需求在日常Python处理里挺常见的,我给你分享几个靠谱的实现方式:
方法1:用ast.literal_eval()(最安全推荐)
这个方法是Python标准库提供的,专门用来解析字符串形式的Python字面量,比直接用eval()安全得多,不会执行恶意代码:
import ast str_input = '[1, 3, 6, 8]' int_list = ast.literal_eval(str_input) print(int_list) # 输出: [1, 3, 6, 8]
它会自动把字符串解析成对应的Python列表,里面的数字也会直接是整数类型,完美符合你的需求。
方法2:手动字符串处理(无需导入模块)
如果不想依赖任何模块,也可以手动处理字符串的格式:
str_input = '[1, 3, 6, 8]' # 先去掉首尾的方括号,再按逗号分割成单个数字字符串 num_strings = str_input.strip('[]').split(',') # 遍历每个字符串,去掉空格后转成整数 int_list = [int(num.strip()) for num in num_strings] print(int_list) # 输出: [1, 3, 6, 8]
这个方法完全靠字符串操作实现,适合简单的场景,注意要处理数字前后的空格哦。
方法3:用json.loads()(兼容JSON格式)
因为你的输入字符串刚好符合JSON数组的格式,所以也可以用JSON模块来解析:
import json str_input = '[1, 3, 6, 8]' int_list = json.loads(str_input) print(int_list) # 输出: [1, 3, 6, 8]
这个方法也很简洁,而且如果你的输入是更复杂的JSON格式数据,这个方法也能轻松处理。
内容的提问来源于stack exchange,提问作者user14251114
相关产品推荐
相关产品推荐

