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

如何在Python中拆分并存储文本文件中分号分隔的数据

问题原因

你调用的append()方法会将split()返回的整个列表作为单个元素存入目标列表,最终得到的是嵌套列表[['apples', 'oranges', 'grapes']],因此长度为1。

解决方案

场景1:仅处理文件单行内容

直接将split()的返回值赋值给列表即可,无需额外追加操作:

# 推荐用with语法自动管理文件句柄,避免资源泄漏
with open("doc.txt", "r", encoding="utf-8") as doc:
    line = doc.readline().strip()
    alist = line.split(";")

print(alist) # 输出:['apples', 'oranges', 'grapes']
print(len(alist)) # 输出:3

场景2:需要处理文件多行内容,所有拆分项存入同一个列表

将append()替换为extend()方法,该方法会将传入可迭代对象的元素逐个追加到列表中:

alist = []
with open("doc.txt", "r", encoding="utf-8") as doc:
    for line in doc:
        line = line.strip()
        # 跳过空行避免存入空元素
        if not line:
            continue
        stuff = line.split(";")
        alist.extend(stuff)

print(alist)
print(len(alist))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 00:54:03