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

如何读取元素间空格不固定的文件数据并转换为嵌套数字列表

问题原因

你现有代码的问题主要有三点:

  • line.strip().split("\n")没有把处理后的结果赋值给变量,相当于这行执行完没有生效,最后追加到列表的还是原始的带换行符的字符串
  • 用split("\n")是按换行分割,完全不符合你拆分同行多个数值的需求
  • 分割后得到的是字符串类型,还需要转成浮点型才能得到数值格式的结果

修正后的代码

result = []

with open("filename.txt", "r") as file:
    # 跳过第一行表头
    file.readline()
    for line in file:
        # strip去掉首尾空白(包括换行符),split无参数默认按任意数量空白分割
        str_values = line.strip().split()
        # 把每个字符串转成float,组成子列表再追加
        float_values = [float(v) for v in str_values]
        result.append(float_values)

print(result)

代码说明

  • split()不传参数的时候,会自动匹配任意长度的空格、制表符等空白字符作为分隔符,刚好适配你文件里空格数量不固定的场景,完全不用自己处理多空格的问题
  • 用列表推导式把分割得到的字符串批量转成float类型,就可以得到数值格式的子列表
  • 尽量不要用list作为变量名,这是Python内置的类型关键字,重名会覆盖原有功能,后续容易出奇怪的错误

运行上面的代码就能得到你想要的嵌套列表格式了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 05:09:03