print("*********************计算器**********************") print("*** 1.加法 ***") print("*** 2.减法 ***") print("*** 3.乘法 ***") print("*** 4.除法 ***") print("************************************************") a = int(input("输入一个数:")) b = int(input("输入一个数:")) c = int(input("输入运算单位:")) while c > 4: print("输入错误,请重新输入") c = int(input("输入运算单位:")) if c == 1: print(a + b) elif c == 2: print(a - b) elif c == 3: print(a * b) elif c == 4: print(a / b) else: print("输入错误,请重新输入")
时间: 2023-07-23 20:02:43 浏览: 41
这段代码本身没有明显的性能问题,但是可以进行一些改进来提高代码的可读性和可维护性。以下是一些建议:
1. 将菜单部分的代码提取为一个函数,可以提高代码的复用性和可读性。
```python
def display_menu():
print("*********************计算器**********************")
print("*** 1.加法 ***")
print("*** 2.减法 ***")
print("*** 3.乘法 ***")
print("*** 4.除法 ***")
print("************************************************")
display_menu()
```
2. 使用字典来替代多个if-elif语句,可以简化代码并提高可扩展性。
```python
operation = {
1: lambda x, y: x + y,
2: lambda x, y: x - y,
3: lambda x, y: x * y,
4: lambda x, y: x / y
}
if c in operation:
print(operation[c](a, b))
else:
print("输入错误,请重新输入")
```
3. 添加异常处理机制,以防止除零错误或非法输入。
```python
try:
if c in operation:
result = operation[c](a, b)
print(result)
else:
print("输入错误,请重新输入")
except ZeroDivisionError:
print("除数不能为零")
except Exception as e:
print("发生错误:", str(e))
```
通过以上改进,代码更加简洁、易读,并且具备一定的容错能力。