英文:
Can i make variables work within If statements?
问题
如何使这个变量在Python的if语句中工作?
arrived = input('门铃响了吗?: ')
if arrived == 'yes' or arrived == 'Yes':
doorbell = input('是来自ifood吗?: ')
elif arrived == 'no' or arrived == 'No':
print('还没有,继续等待')
else:
print('请用是或否回答第一个问题')
if doorbell == 'yes' or doorbell == 'Yes':
print('您的ifood已经送到了!!!')
elif doorbell == 'no' or doorbell == 'No':
print('还不是您的ifood,继续等待')
else:
print('请用是或否回答问题')
我是个初学者,这开始作为一个练习,我已经搜索了一段时间,我知道在Python中变量是全局的,但有没有办法使它工作?
英文:
How can i make this variable work withing the if statement in python?
arrived = input('Have the doorbell ringed?: ')
if arrived == 'yes' or 'Yes':
doorbell = input('Is it from ifood?: ')
elif arrived == 'no' or 'No':
print('It is not here yet, keep waiting')
else:
print('Please answer the first question with yes or no')
if doorbell == 'yes' or 'Yes':
print('Your ifood have arrived!!!')
elif doorbell == 'no' or 'No':
print('It is not your ifood yet, keep waiting')
else:
print('Please answer the questions with yes or no')
I'm a beginner and this started as an exercice, i've been searching this for a while and i know variables are global in python but is there a way to make it work?
答案1
得分: 0
你的 if
是错误的。更好的写法是:
if arrived == 'yes' or arrived == 'Yes':
或者
if arrived in ['yes', 'Yes']:
英文:
Your if
is wrong. Better is:
if arrived == 'yes' or arrived == 'Yes':
or
if arrived in ['yes','Yes']:
答案2
得分: 0
首先,你的if语句有误 - 它需要包括第二个arrived ==
,否则它不会起作用。它应该是这样的。
if arrived == 'yes' or arrived == 'Yes':
其次,你可能想将第二个if-elif-else语句放在第一个if语句内部,因为它只应在第一个if语句的条件满足时触发。
完整解决方案:
arrived = input('门铃响了吗?: ')
if arrived == 'yes' or arrived == 'Yes':
doorbell = input('是来自ifood吗?: ')
if doorbell == 'yes' or doorbell == 'Yes':
print('你的ifood已经送到了!')
elif doorbell == 'no' or doorbell == 'No':
print('这不是你的ifood,请继续等待。')
else:
print('请用是或否回答问题。')
elif arrived == 'no' or arrived == 'No':
print('还没有送到,请继续等待。')
else:
print('请用是或否回答第一个问题。')
英文:
First, your if statement is wrong - it needs to include a second arrived ==
or it won't work. It should look like this.
if arrived == 'yes' or arrived == 'Yes':
Second, you probably want to chuck the second if-elif-else inside the first if statement, since it should only trigger if that if statement condition is fulfilled.
Full solution:
arrived = input('Have the doorbell ringed?: ')
if arrived == 'yes' or arrived == 'Yes':
doorbell = input('Is it from ifood?: ')
if doorbell == 'yes' or 'Yes':
print('Your ifood have arrived!!!')
elif doorbell == 'no' or 'No':
print('It is not your ifood yet, keep waiting')
else:
print('Please answer the questions with yes or no')
elif arrived == 'no' or arrived == 'No':
print('It is not here yet, keep waiting')
else:
print('Please answer the first question with yes or no')
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论