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

Python待办列表Bug:新增待办无法换行,追加至同一行

问题分析与解决

你的待办项挤在同一行的核心原因是添加新待办时没有追加换行符:

  • 用readlines()读取文件时,每一行都会保留末尾的\n换行符
  • 但你从用户输入提取的todo没有添加\n,直接append到列表后,写入文件时就会和上一行内容连在一起

修复代码

只需修改add分支里的append语句,给新待办加上换行符:

if 'add' in user_action or 'new' in user_action or 'more' in user_action:
    todo = user_action[4:]

    with open('todos.txt', 'r') as file:
        todos = file.readlines()

    # 给新待办添加换行符,保证写入文件时单独占一行
    todos.append(todo + '\n')

    with open('todos.txt', 'w') as file:
        file.writelines(todos)

额外优化(可选)

为避免用户输入前后的空格干扰,可在提取todo时加上strip():

todo = user_action[4:].strip()

这样无论用户输入add clean car还是add clean car,都能得到干净的待办内容,写入文件后每个待办项会单独占一行,控制台show时也会正确显示序号。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 18:31:16