改写成面向对象的形式,创建类,在类中设定好属性和方法,再以类为模版创建一个实例对象,实现任务。
3条回答 默认 最新
- 喝茶看狗 2022-11-27 22:07关注
# 请直接运行并体验代码 import math class Calculator: # 变量key代表循环运行程序的开关 key = 1 print('欢迎使用工作量计算小程序!') def __init__(self): choice = input('请选择计算类型: (1- 工时计算,2- 人力计算)') if choice == '1': self.size = float(input('请输入项目大小: (1代表标准 大小,请输入小数) ')) self.number = int(input('请输入人力数量: (请 输入整数) ')) self.time = None if choice == '2': self.size = float(input('请输入项目大小: (1代表 标准大小,请输入小数)')) self.number = None self.time = float(input('请输入工时数量: (请输入小数)')) # 完成计算的函数 def estimated(self): # 人力计算 if (self.number == None) and (self.time != None): self.number = math.ceil(self.size * 80 / self.time) print('项目大小为%.1f个标准项目,如果需要在%.1f个工时完成,则需要人力数里为: %d人' % (self.size, self.time, self.number)) # 工时计算 elif (self.number != None) and (self.time == None): self.time = self.size * 80 / self.number print('项目大小为%.1f个标准项目,使用%d个人力完成,则需要工时数量为: %.1f个' % (self.size, self.number, self.time)) # 询问是否继续的函数 def again(self): a = input('是否继续计算?继续请输入y,输入其他键将结束程序。') if a != 'y': # 如果用户不输入y',则把key赋值为0 Calculator.key = 0 print('感谢使用工作量计算小程序!') # 主函数 if __name__ == '__main__': while Calculator.key == 1: demo = Calculator() demo.estimated() demo.again()
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用