Python读取文本转列表时去除数字单引号 将字符串转为整数类型
核心原因
文件读取返回的内容默认是字符串类型,列表输出时包裹元素的单引号是Python标记字符串类型的格式符号,并非内容本身包含单引号,你需要做的是将字符串转为整数类型,而非做去引号的字符串操作。
修正代码
直接在列表推导式中用int()函数完成字符串到整数的转换即可,不需要额外调用readlines(),直接迭代文件对象更简洁高效:
with open("textfile") as file: lines = [int(line.rstrip()) for line in file]
效果验证
运行上述代码后打印lines,得到的输出就是目标整数列表:
[841, 842, 843, 844, 845, 846]
补充注意事项
- 如果文件中存在空行,可以加过滤逻辑避免转换报错:
lines = [int(line.rstrip()) for line in file if line.strip()] - 不要用字符串替换的方式移除单引号,这种方式得到的依然是字符串类型,无法直接参与数值计算。
内容的提问来源于stack exchange,提问作者amirre
相关产品推荐
相关产品推荐

