将TXT文件拆分单词并逐行写入新文件的Python代码修改请求
修改后的代码及说明
原代码存在语法和逻辑错误,以下是仅修正错误后的版本:
def task_2(): in_file = open("input.txt", "r") out_file = open("output.txt", "w") line = in_file.readline() # 修正:文件对象无line()方法,改用readline()读取一行 words = line.strip().split() # 修正:先去首尾空格,再按空格分割为单词列表 for word in words: print(word) # 修正:打印循环变量word,而非固定字符串'word',print默认自带换行 out_file.write(f"{word}\n") # 修正:写入单词后添加换行符,保证逐行存储 in_file.close() out_file.close()
关键修改点:
- 替换
in_file.line()为in_file.readline():文件对象没有line()方法,readline()是读取单行的正确方式 - 调整
words的赋值逻辑:仅strip()只能去除首尾空格,搭配split()才能把空格分隔的字符串拆分成独立单词的列表 - 修正打印内容:原代码打印固定字符串'word',改为打印循环变量
word,避免输出错误内容 - 补充文件写入的换行符:原代码写入时无换行,会导致所有单词拼接成一行,添加
\n保证逐行存储
内容的提问来源于stack exchange,提问作者Silly Little Baka
相关产品推荐
相关产品推荐

