允许Python应用程序继续运行直到用户结束

时间:2012-12-15 19:31:20

标签: python user-input

我是python的新手,我写了一个简单的二十一点卡计数应用程序。应用程序运行并在用户输入结束后,我希望它继续询问用户输入并打印计数。我不希望它重新启动,我希望它继续。我已经包含了源代码。谢谢你们。

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 个答案:

答案 0 :(得分:1)

要使程序运行直到用户停止提供输入,您可能需要将代码置于循环中。如果您事先不知道需要循环多长时间,while循环通常是最好的。

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

    # if/elif block goes here

一旦你这样做,你会发现代码中存在逻辑错误。目前,您每次都会在其中一个if / elif块中打印count + 1或类似内容。但是,这不会修改count的值,它只是直接打印新值。我认为您要做的是更改代码以直接修改if / else块中的count,然后在单独的步骤中将其写出来。您还可以使用<>组合几个条件,如下所示:

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

    print count

你可以选择添加一些额外的错误检查,以确保输入的值是合适的(例如在1到11之间),但为了清楚起见,我已将其留在此处。