python用函数定义简易计算器代码用nonlogal写
时间: 2024-11-30 08:22:49 浏览: 15
当然可以。在Python中,我们可以使用非阻塞I/O(non-blocking I/O)来创建一个简单的命令行计算器功能。下面是一个基础的示例,它定义了一个`Calculator`类,包含加法、减法、乘法和除法的方法:
```python
class Calculator:
def add(self, num1, num2):
return num1 + num2
def subtract(self, num1, num2):
return num1 - num2
def multiply(self, num1, num2):
return num1 * num2
def divide(self, num1, num2):
if num2 != 0:
return num1 / num2
else:
print("Error: Division by zero is not allowed.")
def main():
calculator = Calculator()
while True:
user_input = input("Enter an operation (e.g., 'add 5 3', 'subtract', or 'exit'): ")
try:
# 解析用户输入,获取操作和数字
operation, *numbers = user_input.split()
if operation.lower() == "exit":
break
elif len(numbers) == 2:
num1, num2 = map(int, numbers)
result = getattr(calculator, operation)(num1, num2)
print(f"{operation} {num1} and {num2}: {result}")
else:
print("Invalid input. Please provide two operands for the operation.")
except ValueError:
print("Invalid number format. Please enter integers only.")
if __name__ == "__main__":
main()
```
在这个代码里,我们首先定义了`Calculator`类,并实现了四个基本运算方法。然后在`main`函数中,通过非阻塞的`input`循环接收用户的输入,解析并调用相应的计算方法。
阅读全文