Python如何去除列表每个元素外层的单引号?
你看到的外层单引号是Python表示字符串类型的标识,不属于元素本身的内容。你的需求实际是把字符串格式的坐标转为真实的列表对象,可选用以下两种方法:
方法1:使用
ast.literal_eval(推荐) 这是最安全的解析方法,不会有eval的任意代码执行风险:
import ast origin = ['[0,0]', '[0,1]', '[1,0]', '[1,1]'] res = [ast.literal_eval(i) for i in origin]
输出结果为[[0, 0], [0, 1], [1, 0], [1, 1]],每个元素都是真正的列表类型。
方法2:纯字符串处理(无需导入模块)
适合简单场景,手动处理字符串拆分转换:
origin = ['[0,0]', '[0,1]', '[1,0]', '[1,1]'] res = [] for s in origin: # 去掉首尾方括号,拆分后转整数 num_list = list(map(int, s.strip('[]').split(','))) res.append(num_list)
运行结果和方法1完全一致。
内容的提问来源于stack exchange,提问作者Simplicity
相关产品推荐
相关产品推荐

