python - 如何返回程序顶部
问题描述
我是 python 新手,写了一个执行 a+b=c 的程序,问题是,我该怎么做才能让程序回到顶部?
这是我尝试过的,但它不会打开
#def start():
a = int(input("num1: "))
b = int(input("num2: "))
c = a + b
print("sum of {0} + {1} = {2}" .format(a, b, c))
restart = input("Exit or Again?: ")
if restart == "Again" or "again":
start()
if restart == "Exit" or "exit":
exit
查阅了一些教程,但没有一个有帮助。先感谢您。
解决方案
小心你的条件restart == "Again" or "again"
,因为它相当于(restart == "Again") or "again"
. 字符串的布尔值(此处again
)为 True,除非该字符串为空。所以这个条件会一直存在True
。
如果你想保持相同的结构:
def start():
a = int(input("num1: "))
b = int(input("num2: "))
c = a + b
print("sum of {0} + {1} = {2}" .format(a, b, c))
restart = input("Exit or Again?: ")
if restart in ["Again", "again"]:
start()
else:
print("Bye !")
start()
如果您更喜欢通过以下方式实现它while loop
:
restart = "again"
while restart in ["Again", "again"]:
a = int(input("num1: "))
b = int(input("num2: "))
c = a + b
print("sum of {0} + {1} = {2}" .format(a, b, c))
restart = input("Exit or Again?: ")
推荐阅读
- python-3.x - 如何根据多个嵌套条件在 Pandas 数据框中创建一个新列并填充各自的特定值?
- java.util.scanner - 如何在扫描仪中正确使用多个字符串变量?
- amazon-web-services - 使用 powershell 脚本安装 msi 文件
- python - 如何使用 StyleGAN2 在潜在空间的两张图片之间进行插值
- flutter - 更改开关的颜色 - FormBuilderSwitch - flutter
- python - Statsmodels Logit 为伪 R 平方提供 inf
- javascript - 根据 id 映射两个对象时如何从一个对象获取数据?
- angular - 如何更新 sessionStorage - Angular
- symfony - Symfony Workflow 中的marking_store“服务”选项是什么
- c++ - 从外部访问类对象