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

Python读取文本文件生成嵌套List:每行转为含浮点/字符串的子列表

解决方案:将文本行转换为带类型转换的嵌套列表

修改后的代码(循环版,可读性高)

filename = "locations.txt"

with open(filename) as file:
    locations = []
    for line in file:
        # 拆分每行并清理元素前后空格
        parts = [item.strip() for item in line.rstrip().split(',')]
        # 转换前两个元素为float,保留最后一个为字符串,生成子列表
        sub_list = [float(parts[0]), float(parts[1]), parts[2]]
        locations.append(sub_list)

print(locations)

简洁版(列表推导式)

filename = "locations.txt"

with open(filename) as file:
    locations = [
        [float(p[0]), float(p[1]), p[2]]
        for line in file
        if (p := [item.strip() for item in line.rstrip().split(',')]) and len(p) == 3
    ]

print(locations)

关键逻辑说明

  • 拆分与清理:用split(',')将每行按逗号分割为字符串列表,再通过strip()去除每个元素的前后空格,避免转换float时因空格报错。
  • 类型转换:将前两个分割后的字符串用float()转为浮点数值,第三个元素保留原始字符串类型。
  • 嵌套列表构建:把处理后的子列表逐个添加到上层列表,最终得到符合需求的嵌套结构。

输出结果

运行代码后将得到你期望的格式:

[[35.60479, -105.99888, 'Main Campus'], [35.13575, -106.520126, 'Montoya'], [35.30146, -106.726128, 'Rio Rancho'], [35.1502336, -106.57792, 'STEMULUS Center'], [35.184371, -106.595124, 'ATC']]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 03:35:12