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

Python读取文本文件并忽略首行指定数值存入列表

嘿,我来帮你搞定这个读取文件的小问题!

首先梳理下你的需求:跳过文本首行的数字5,把后面的1、2、3、4、5转换成整数列表[1,2,3,4,5]。你的原代码有几个小问题:

  • 没有跳过首行的5,导致第一行内容被错误纳入处理
  • 直接取line[1]会触发索引错误(比如首行单独是5的话,split后只有一个元素)
  • 没有用更安全的文件处理方式(比如with语句)

下面分两种常见的文本格式给出解决方案:

情况1:每个数字单独占一行

如果你的文本文件内容是这样的:

5
1
2
3
4
5

可以用这段代码:

# 用with语句自动管理文件,避免忘记关闭
with open('text.txt', 'r') as file:
    # 调用next()跳过第一行的数字5
    next(file)
    result_list = []
    # 遍历剩下的每一行
    for line in file:
        # 去除换行符和多余空格,转成整数后加入列表
        num = int(line.strip())
        result_list.append(num)

print(result_list)  # 输出: [1, 2, 3, 4, 5]

情况2:后续数字在同一行用逗号分隔

如果你的文本文件内容是这样的:

5
1,2,3,4,5

可以用更简洁的列表推导式处理:

with open('text.txt', 'r') as file:
    next(file)  # 跳过首行
    # 读取第二行内容,分割后逐个转成整数
    line_content = file.readline().strip()
    result_list = [int(num_str) for num_str in line_content.split(',')]

print(result_list)  # 输出: [1, 2, 3, 4, 5]

这两种方案都能完美实现你的需求,而且用with语句可以确保文件在操作完成后自动关闭,比直接open()更安全可靠。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:26:24