- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在编写一个通用数学方程计算器,用于计算 2D 形状的面积/周长、3D 形状的表面积/体积,以及我将来决定构建的任何公式。
我正在尝试构建一个函数,让用户决定是否要再次使用已经使用过的方程。
如果我在程序的每个部分都创建一个具有相同目的的函数(我已经尝试过),那么效率会很低。
def triangledecision():
print("Input 1 if you would like to calculate the area/perimeter of this shape again")
print("Input 2 if you would like to return to the 2D shape menu")
print("Input 3 if you would like to return to the main menu")
answer = input()
if answer == "1":
triangle()
if answer == "2":
twodshapes()
if answer == "3":
main()
else:
while answer != "1" or "2" or "3":
print("Please select one of the options")
triangledecision()
这个函数按预期工作,但是,我必须为每个部分创建相同的函数,这既耗时又低效。
最佳答案
您可以使用装饰器之类的东西来实现这一点。我有点困惑你的要求,但我假设你想要一个可以处理你所有操作的通用函数。我会创建一个重试包装器。
def retry(func):
def wrapper(*args, **kwargs):
while True:
func(*args, **kwargs)
answer = input('if would you like to calculate the area or perimeter of this shape again, enter 1: ')
if answer != '1':
break
return
return wrapper
然后你在你的函数上使用@retry
。例如:
@retry
def square_perimeter():
#whatever your code is
使用此功能,您可以要求用户通过简单地使用 @retry
装饰器来重用任何函数。
关于python - python中有没有一个命令可以让你重新执行刚刚执行过的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56589110/
实现信息技术的自主可控,可以说是金融行业最紧迫、最重要的推进战略了。 人民银行、银保监会等主管部门密集出台文件,指导金融行业核心领域自主可控技术应用。 拿数据库来说,自主可控这事儿业内也
在methods中创建方法showtime,传入要跟当前时间要对比的时间 ?
其实这个没什么技术含量,当然就直接贴代码,不废话了, 但是在其实开发中还是蛮有用的,譬如论坛帖子,围脖等都有相关应用 复制代码代码如下: function tranTim
今天,杭州人的朋友圈都被这场晚会刷屏了 分散在全球的阿里人都回到杭州,为阿里巴巴送上20周岁的生日祝福。 阿里巴巴20周年年会,被称作“有史以来杭州规模最大的年会”,没有
在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来。比如微博,SNS类应用就最长用到这个功能。而一般存储在数据库中的时间格式为 Un
我是一名优秀的程序员,十分优秀!