我一直在处理一个我正在处理的简单代码的问题.它询问你的名字,以及你的一天如何,根据你的答案,它应该做与该答案相关的行动.感谢您提前帮助.
import time
print "Hello."
time.sleep(.5)
print "What's your name?"
var = raw_input()
time.sleep(.3)
print "Hello", var
time.sleep(1)
print "How are you?"
i = 0
answer1 = False
answer2 = False
answer0 = False
repeat = True
while repeat == True:
if i == 0:
answer = raw_input()
if answer == "Good" or "good":
answer1 = True
if answer == "Bad" or "bad":
answer2 = True
if answer is not "good" or "Good" or "ok" or "Ok" or "OK" or "Not so good" or "not so good" or "Not so good." or "not so good.":
answer0 = True
if answer2 == True:
print "That sucks."
time.sleep(1)
print "Well that's end of my code", var
time.sleep(1)
print "See ya!"
break
if answer1 == True:
print "That's awesome!"
time.sleep(1)
print "Well that's end of my code", var
time.sleep(1)
print "See ya!"
break
if answer0 == True:
print "I'm sorry, I didn't understand you."
time.sleep(1.5)
print "Are you good, ok, or not so good?"
Run Code Online (Sandbox Code Playgroud)
Apr*_*ion 15
这些条件总是正确的,因为非空字符串文字在python中是真的:
if answer == "Good" or "good":
if answer == "Bad" or "bad":
if answer is not "good" or "Good" or "ok" ...:
...
# is the same as
if (something == something_else) or (True) or (True) ... :`
Run Code Online (Sandbox Code Playgroud)
所以用以下代码重新代码:
if answer in ("Good", "good"):
if answer not in ("good", "Good", "ok", ...):
....
Run Code Online (Sandbox Code Playgroud)
或者更好的是,如果你想包括"好"和其他案例变化:
if answer.lower() == "good":
if answer.lower() not in ("good", "ok", ...):
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
176 次 |
| 最近记录: |