You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何将txt文件中逗号分隔的数字转为int并实现遍历?

错误原因

你调用int(data_seperate)报错的核心原因是:data_seperate仍然是包含所有数字、换行符的单个长字符串,int()仅支持对单个符合数字格式的字符串做转换,无法直接处理包含多个数字、分隔符的混合字符串。

正确实现方案

你不需要把逗号替换为空格、换行,直接用字符串的split()方法按逗号切分,就能直接得到每个数字对应的独立字符串,再逐个转换为int类型即可,参考代码如下:

with open('HW5.txt') as f:
    data = f.read()
    # 按逗号切割长字符串,得到每个数字单独组成的字符串列表
    num_str_list = data.split(',')
    # 逐个转换为int类型,strip()用于过滤可能存在的首尾空白字符,避免转换报错
    int_nums = [int(num.strip()) for num in num_str_list]

# 后续可以直接遍历整数列表处理
print(int_nums)
# 验证元素类型
print(type(int_nums[0]))

补充说明

  • 使用with open()语法打开文件时,代码块执行结束后会自动关闭文件,你原有代码末尾的f.close()属于冗余代码,可以删除。
  • 如果需要按行打印每个数字,直接遍历int_nums逐个打印即可,不需要提前把分隔符替换为换行符。

内容的提问来源于stack exchange,提问作者gavmross

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 02:54:02