计算器采用函数和类编写代码,实现计算器的四则运算功能,并能多次运算,直到用户选择“退出”。python
时间: 2024-11-10 14:26:03 浏览: 52
在Python中,你可以创建一个简单的命令行计算器程序,通过定义函数和类来实现基本的四则运算功能。以下是一个基本的例子:
```python
# 定义一个Calculator类
class Calculator:
def __init__(self):
self.result = 0
# 加法方法
def add(self, num):
self.result += num
return self.result
# 减法方法
def subtract(self, num):
self.result -= num
return self.result
# 乘法方法
def multiply(self, num):
self.result *= num
return self.result
# 除法方法 (需要处理除数为零的情况)
def divide(self, num):
if num != 0:
self.result /= num
else:
print("错误:除数不能为零")
return self.result
# 清空结果的方法
def clear(self):
self.result = 0
# 主函数,用于循环接收用户输入并计算
def main():
calc = Calculator()
while True:
user_input = input("请输入你要进行的运算(加+,减-,乘*,除/,清0或退出q):")
if user_input.lower() == 'q':
break
elif user_input in ['+', '-', '*', '/']:
number = float(input(f"请输入数字:"))
result = getattr(calc, user_input)(number)
print(f"{calc.result}")
elif user_input == 'clear':
calc.clear()
else:
print("无效的操作")
if __name__ == "__main__":
main()
```
在这个程序中,`Calculator`类包含了各种基本运算的方法,`main`函数负责循环接收用户的操作指令。用户可以选择添加、减去、乘以、除以数字,或者清零当前的结果,直到用户选择退出。
阅读全文
相关推荐


















