Python新手求助:如何实现数字判断后生成并读取TXT文件?
问题描述
正在学习Python,无编程经验,当前项目遇到瓶颈。需要编写Python代码实现以下功能:
- 询问用户输入数字
- 若数字大于50,则生成TXT文件并写入消息
- 随后读取该文件并打印内容
尝试的错误代码:
number = int(input("give a number:")) def number(): f = open("number.txt", "a") f.write("The number is bigger then fifty") if f.read. getal > 50: file= f.read() print(file) g.close()
错误分析
- 变量名
number和函数名number重复,会直接覆盖用户输入的数字变量 - 文件打开用
"a"(追加)模式时,文件指针默认在末尾,直接读取会得到空内容;且逻辑顺序错误,应该先判断数字大小再决定是否写入文件 - 条件判断语法完全错误:
f.read. getal > 50既没有正确调用读取方法,也没有使用用户输入的数字做判断 - 关闭文件时用了未定义的变量
g,实际文件句柄是f - 拼写错误:"then"应为"than"
修正后的代码
# 获取用户输入的数字 user_number = int(input("give a number:")) # 判断数字是否大于50 if user_number > 50: # 写入文件:"w"模式会创建新文件(若已存在则覆盖) with open("number.txt", "w") as f: f.write("The number is bigger than fifty") # 读取文件并打印内容 with open("number.txt", "r") as f: content = f.read() print(content)
代码说明
- 用
user_number代替number,避免命名冲突(此处直接去掉了不必要的函数定义) - 使用
with语句自动管理文件资源,无需手动调用close() - 先判断数字大小,符合条件才执行文件操作
- 修正了拼写错误,调整了文件操作的逻辑顺序
内容的提问来源于stack exchange,提问作者Kim
相关产品推荐
相关产品推荐

