【问题标题】:how to write a code that loops more than once using the for loop function in python如何使用python中的for循环函数编写循环多次的代码
【发布时间】:2022-06-27 20:52:33
【问题描述】:

这是我的代码:

number = input("How many students are registering?")

for i in number:
    id_number = input("Enter your ID Number:")
    print(id_number)

with open("reg_form.txt","w") as f:
    f.write(id_number+"\n")

代码必须循环输入我上面代码中变量“number”中输入的相同数字。

【问题讨论】:

  • 这有什么问题? yoiu遇到什么问题并试图解决,你需要使用for i in range(int(number))
  • 您需要将number 转换为int,否则您只是在迭代给定值中的字符:number = int(input("How many students are registering?"))。请记住,您需要处理用户未输入有效数字的情况
  • 传递给 number 变量的值是一个字符串,因为 input() 就是这样工作的。您必须将其转换为 int,例如 int(input("有多少学生正在注册?"))

标签: python


【解决方案1】:

这个问题没有显示任何研究工作,但这是您正在寻找的内容:

with open("reg_form.txt","w") as f:
    for i in range(int(input('how many students registering?'))):
        id_number = input("Enter your ID Number:")
        print(id_number)
        f.write(id_number+"\n")

【讨论】:

    【解决方案2】:

    这应该可以解决问题(确保输入是一个整数并且你迭代一个可迭代的(范围))

    number = int(input("How many students are registering?"))
    
    for i in range(number):
        id_number = input("Enter your ID Number:")
        print(id_number)
    

    【讨论】:

    • 你忘记写入文件了。
    • 同意,我不确定下半场到底应该做什么。也许@Ophethile 稍后会澄清这一点,然后我会重新审视我的答案。
    • 他们显然希望在循环的每次迭代中将每个id_number 写入/附加到输出文件中。看我的回答
    【解决方案3】:

    您需要做的就是使用带有 number 的 For 循环。

    代码如下:

    number = input("How many students are registering?")
    
    for i in range(int(number)):
      id_number = input("Enter your ID Number:")
      print(id_number)
    
      with open("reg_form.txt","w") as f:
        f.write(id_number+"\n")
    

    我相信您的意思是将 With 语句放在 For 循环中,因为否则它将不起作用(id_number 未定义)。

    【讨论】:

    • 通过将with 语句放在for 循环中,您会通过打开/关闭操作创建大量开销,而我们可以打开文件一次然后循环输入值以写入它在循环的每个步骤中
    【解决方案4】:

    我不完全知道你的问题是什么,但我想我可以帮助你

    number = input("How many students are registring")
    for i in range(1,int(number))
       id_number = input("Enter your ID Number: ")
       print(id_number)
     with open("reg_form.txt","w") as f: f.write(id_number+"\n"
       
    

    【讨论】:

    • 您的代码将无法运行,因为您在使用范围时需要使用整数。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多