如何将列表中的字符串转换为嵌套列表?
解决方法
你可以用Python标准库中的ast.literal_eval()来处理这个问题,它能安全解析字符串形式的Python数据结构,完美适配你的需求,比手动用split处理靠谱得多。
代码示例
import ast corpus = ['[(0, 1), (1, 2), (2, 1)]'] # 解析每个字符串元素,再包裹成嵌套列表 corpus = [ast.literal_eval(item) for item in corpus] print(corpus) # 输出: [[(0, 1), (1, 2), (2, 1)]]
为什么不用split?
你的目标字符串里包含元组、括号等复杂结构,用split需要处理很多边界情况(比如括号、逗号的位置),很容易出错。而ast.literal_eval()会直接把字符串当作合法的Python字面量解析,自动帮你生成对应的列表和元组结构,既简洁又安全。
内容的提问来源于stack exchange,提问作者Andrei Valov
相关产品推荐
相关产品推荐

