【问题标题】:How do I add a loop to my python code, to start it from the beginning?如何在我的 python 代码中添加一个循环,从头开始?
【发布时间】:2015-10-23 14:40:27
【问题描述】:

如果他们选择是 (y),我如何从头开始重新启动

print ""
print "               WAGE CALCULATOR TOOL   -    By Joel"
print""
print " Please enter details: "
name = raw_input("  Employee Name: ")
hrs = float(raw_input("  Hours Per Week: "))
rate = float(raw_input("  Hourly Rate: "))
pay = hrs * rate
print ""
print "",name,":","Wage amount: "
print " ",pay,"Per week"
week = pay * 4
print " ",week,"Every 4 weeks"
print""

done = raw_input("Restart? y/n: )

【问题讨论】:

  • 您是否尝试过阅读有关循环的 Python 文档?
  • 是的,我尝试了不同的方法来添加它,但它最终根本没有加载:(
  • 将其中一种方式添加到您的帖子中。

标签: python loops restart


【解决方案1】:

建议将其包装成一个函数:

def ask():
    print " Please enter details: "
    name = raw_input("  Employee Name: ")
    hrs = float(raw_input("  Hours Per Week: "))
    rate = float(raw_input("  Hourly Rate: "))
    pay = hrs * rate
    print ""
    print "",name,":","Wage amount: "
    print " ",pay,"Per week"
    week = pay * 4
    print " ",week,"Every 4 weeks"
    print""

    return raw_input("Restart? y/n: ") == "y"

done = ask()
while not done:
    done = ask()

当然,您还应该考虑验证用户输入(例如,通过try/except 捕获float() 引发的错误)。

【讨论】:

    【解决方案2】:
    def ask():
        print (" Please enter details: ")
        name = input("  Employee Name: ")
        hrs = float(input("  Hours Per Week: ")
        rate = float(input("  Hourly Rate: ")
        pay = hrs * rate
        print ("")
        print (""),name,(":"),("Wage amount: ")
        print (" "),pay,("Per week")
        week = pay * 4
        print (" "),week,("Every 4 weeks")
        print("")
    
        return input("Restart? y/n: ") == "y"
    
    done = ask()
    while not done:
        done = ask()
    

    我没有尝试过原始输入,但似乎效果更好

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-14
      相关资源
      最近更新 更多