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

使用enumerate追踪迭代次数时,如何拆分文本文件内容为指定列表?

问题修复方案

错误原因

使用enumerate(f)遍历文件时,每次循环得到的user是一个元组,格式为(迭代索引, 行文本内容)。而split()是字符串专属方法,元组没有这个属性,因此触发AttributeError。

修复方案

方案1:拆包enumerate的返回值

直接将enumerate返回的元组拆分为索引和行文本,分别处理:

with open("user-id.txt", "r") as f:
    # start=1 让索引从1开始计数,符合日常习惯
    for idx, line in enumerate(f, start=1):
        # 先去除行尾的换行符,再按冒号分割
        user_info = line.strip().split(":")
        print(f"第{idx}次迭代: {user_info}")

用with语句可以自动关闭文件,避免资源泄漏,比直接open更安全。

方案2:手动维护迭代计数器

如果不想用enumerate,自己定义计数器变量追踪迭代次数:

count = 1
with open("user-id.txt", "r") as f:
    for line in f:
        user_info = line.strip().split(":")
        print(f"第{count}次迭代: {user_info}")
        count += 1

输出效果

两种方案都能得到你需要的格式,同时追踪迭代次数:

第1次迭代: ['polas', '872147']
第2次迭代: ['skridd', '142017']

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 09:12:03