基本Python脚本If语句

时间:2013-04-19 21:19:23

标签: python if-statement

我正在搞乱这个基本的Magic 8 Ball计划,并且我试图让它只允许是或否问题我认为除了有第一个单词“will”或“do”的问题我怎么能制作一个只允许那些单词?

这是脚本:

import random
import time
print "Welcome to Magic Eight Ball !"
while True:
    def Magic8(a):
        foo = ['Yes', 'No', 'Maybe', 'Doubtful', 'Try Again']
        from random import choice
        print choice(foo)


    a = raw_input("Question: ")
    if a == "exit":
        exit()
    #If Stament here
    print "Determining Your Future..."
    time.sleep(2)
    Magic8(a)

3 个答案:

答案 0 :(得分:4)

if a.split(None, 1)[0].lower() in {'will', 'do'}:
    print "Determining Your Future..."
    time.sleep(2)
    magic8(a) # function names are usually not capitalized

str.split()在空格上分割句子,str.lower应该处理大写。

答案 1 :(得分:2)

您可以使用str.startswith并传递一组已接受的字词。

if a.lower().startswith(("will ", "do ")):
   # Do your magic.

答案 2 :(得分:1)

也许如果你的话很少,你可以使用elif或

if a=="exit":
    exit()
elif a=="optionOne":
     doSomething
else:
    print "word not alowed"

或者你可以这样做

if a=="exit" or a=="notAllowedWord":
    exit()