Allow Python App To Continue Running Until User Ends

纵饮孤独 提交于 2019-12-20 05:21:40

问题


I'm pretty new to python and I wrote a simple blackjack card counting app. The app runs and after the user input it ends, I want it to continue asking for the user input and printing the count out. I don't want it to restart, I want it to continue. Ive included the source code. Thanks guys.

count = 0

var = int(raw_input("Enter the value of the card: "))

if var == 1 :
      print count + 1
elif var == 2 :
      print count + 1
elif var == 3 :
      print count + 1
elif var == 4 :
      print count + 1
elif var == 5 :
      print count + 1
elif var == 6 :
      print count + 1
elif var == 7 :
      print count + 0
elif var == 8 :
      print count + 0 
elif var == 9 :
      print count + 0 
elif var == 10 :
      print count - 1 
elif var == 11 :
      print count - 1

回答1:


To make your program run until the user stops providing input, you will probably need to put your code in a loop. A while loop is usually the best when you don't know ahead of time how long you'll need to loop for.

count = 0
while True: # runs forever
    var = int(raw_input("Enter the value of the card: "))

    # if/elif block goes here

Once you do this though, you'll find that there's a logic error in your code. Currently you're printing count + 1 or similar in one of your if/elif blocks each time. However, this doesn't modify the value of count, it just prints the new value directly. What I think you'll want to do is change your code to directly modify count in the if/else blocks, then write it out in a separate step. You can also combine several of your conditions using < or >, like this:

    if var < 7:
        count += 1
    elif var > 9:
        count -= 1

    print count

You could optionally add some extra error checking to make sure the entered value is appropriate (e.g. between 1 and 11), but I've left that off here for clarity.



来源:https://stackoverflow.com/questions/13895449/allow-python-app-to-continue-running-until-user-ends

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!