如何在Python中获取输入并生成.txt格式文件?
给用户输入的文件名自动添加.txt后缀
要实现自动生成带.txt后缀的文件,核心就是在用户输入的字符串末尾拼接.txt,然后把所有用到文件名的地方替换成这个新的变量。
修改后的完整代码
# 获取用户输入并添加.txt后缀 filename = input("Enter a String :) : ") + ".txt" # 创建文件并写入初始内容 with open(filename, 'w') as f: f.write("this is a test file") # 循环追加内容 for i in range(1, 100): # 用with语句自动管理文件关闭,更安全 with open(filename, "a") as a: a.write("\n this will append to the file") # 读取并打印文件内容 with open(filename, "r") as f: content = f.read() print(content, end="")
关键修改说明
- 添加后缀:把原来的
Text = input(...)改成filename = input(...) + ".txt",直接在输入内容后拼接.txt后缀,确保生成的是文本文件。 - 统一变量名:把所有用到原文件名变量
Text的地方替换成filename,避免混淆。 - 优化文件操作:原代码循环里手动调用
close()容易出错,改成用with语句,它会自动在代码块结束后关闭文件,更安全可靠。
进阶优化(可选)
如果担心用户输入的字符串已经带有.txt后缀(比如输入helloWorld.txt),可以先检查一下,避免生成helloWorld.txt.txt这种重复后缀的文件,代码可以改成这样:
filename_input = input("Enter a String :) : ") # 检查是否已包含.txt后缀,没有的话再添加 if not filename_input.endswith(".txt"): filename = filename_input + ".txt" else: filename = filename_input
内容的提问来源于stack exchange,提问作者Abhijit Dey
相关产品推荐
相关产品推荐

