繁体   English   中英

我的代码有语法错误,我不知道问题是什么?

[英]I have syntax error on my code and I don't know what the problem is?

问:“询问用户他们想输入多少个数字。让他们输入这么多数字并将它们写入文本文件。每个数字必须在单独的行上。” 我不知道错误是什么

user = int(input("how many numbers to enter"))
file = open("file1.txt" , "a")
for x in range(user):
    number = input("Enter number" + str(user + 1) + "\n")
    file.writelines(user+"\n")  
file.close()

我相信您使用的是user变量而不是x变量。 固定代码:

user = int(input("how many numbers to enter"))
with open("file1.txt" , "a") as file:
    for x in range(user):
        number = input("Enter number " + str(x + 1) + "\n")
        file.writelines(user + "\n")  

通过阅读练习顺序,我发现您已经接近答案,并假设这就是您想要的。

user = int(input("How many numbers you want to enter?\n"))
file = open("file1.txt", "w")
for x in range(user):
    number = input("Enter number " + str(x + 1) + ":\n")
    file.writelines(str(x) + "\n")
file.close()

您忘记添加用户变量和行

file.writelines(user+"\n")  

您忘记将 int 转换为字符串。

file.writelines(str(user)+"\n")

请注意,您的代码只会写入用户编号“用户”次。

这是适用于我的编辑代码:

user = 5 #number of users
file = open("file1.txt" , "a")
for x in range(user): #loop every user
    number = input("Enter number" + str(x + 1) + "\n") #Use "str()"" to convert number, called int, to a string 
    file.writelines(str(user) + "\n") 
file.close()

尽管您的问题对我来说并不清楚,但我想这就是您所期望的。

user_input = int(input("how many numbers to enter:"))
with open("file1.txt" , "w") as output_file:
    for x in range(user_input):
        number = input("Enter number" + f'{x + 1}:' + "\n")
        print(number, file=output_file)

由于print function 本身会进行换行,因此您可以省略添加新行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM