gpt4 book ai didi

python - 没有用 python 编写文本的第一个输出

转载 作者:行者123 更新时间:2023-12-01 08:15:46 24 4
gpt4 key购买 nike

我正在使用哨兵将一系列数字写入文本文件。如果用户输入-1,它将结束程序。我在另一个循环中添加了 if 语句,它导致用户所做的第一个输入无法打印。

我可以输入:1,2,3,4,5,-1

文本文件将读取:2,3,4,5,-1

这是我的代码:

outfile = open("userInput.txt","w")
userInput = int(input("Enter a number to the text file: "))
count = 0
while int(userInput) != -1:
userInput = int(input("Enter a number to the text file: "))
outfile.write(str(userInput) + "\n")
count +=1
if(count) == 0:
print("There is no numbers in the text file")
outfile.write("There is no numbers in the text file")
outfile.close()

while 循环运行良好。当我创建count变量、count+=1和if语句时,出现了写入问题。

我这样做是为了如果用户不输入任何值,它会说文本文件中没有任何内容,并将其写入文件中。

最佳答案

您的程序执行您编码的操作(如果您通过将代码复制到 SO 来修复缩进错误) - 第一个值永远不会写入文件:

outfile = open("userInput.txt","w")
userInput = int(input("Enter a number to the text file: ")) # THIS is the first input
count = 0
while int(userInput) != -1:
userInput = int(input("Enter a number to the text file: ")) # second to last input
outfile.write(str(userInput) + "\n") # here you write it
count +=1
if(count) == 0:
print("There is no numbers in the text file")
outfile.write("There is no numbers in the text file")
outfile.close()

将其更改为:

count = 0
userInput = 99 # different from -1
with open ("userInput.txt","w") as outfile:
while userInput != -1:
userInput = int(input("Enter a number to the text file: "))
if userInput != -1:
outfile.write(str(userInput) + "\n")
else:
outfile.write("There is no numbers in the text file\n")

count +=1

print("Done")

将至少 1 个数字或文本写入您的文件。

<小时/>

您可能想阅读Asking the user for input until they give a valid response获取如何避免来自 int("some not numer")ValueErrors 的灵感。

这个How to debug small programs可能会帮助您将来调试程序。

关于python - 没有用 python 编写文本的第一个输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54990032/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com