欢迎访问宙启技术站
智能推送

用Python编写一个简单的命令行计算器

发布时间:2023-12-04 17:44:17

下面是一个简单的命令行计算器的Python代码,它可以执行基本的数学运算,例如加法、减法、乘法和除法,并且具有简单的用户界面:

import operator

# 显示计算器的命令提示符
def show_prompt():
    print("欢迎使用命令行计算器!")
    print("请输入您要执行的运算:")
    print("1. 加法")
    print("2. 减法")
    print("3. 乘法")
    print("4. 除法")
    print("0. 退出计算器")

# 执行加法运算
def add(x, y):
    return operator.add(x, y)

# 执行减法运算
def subtract(x, y):
    return operator.sub(x, y)

# 执行乘法运算
def multiply(x, y):
    return operator.mul(x, y)

# 执行除法运算
def divide(x, y):
    try:
        return operator.truediv(x, y)
    except ZeroDivisionError:
        return "除数不能为0"

# 显示使用说明和使用示例
def show_usage():
    print("Usage: calculator.py <operator> <num1> <num2>")
    print("Example: calculator.py add 2 3")

# 主程序
def main():
    show_prompt()
    
    while True:
        # 获取用户输入的命令
        command = input("请输入命令(1-4),或者输入0退出:")
        
        if command == '0':
            print("感谢使用命令行计算器,再见!")
            break
        elif command in ['1', '2', '3', '4']:
            # 获取用户输入的两个数字
            try:
                num1 = float(input("请输入第一个数字:"))
                num2 = float(input("请输入第二个数字:"))
            except ValueError:
                print("输入无效,请输入有效数字!")
                continue
            
            if command == '1':
                result = add(num1, num2)
                print("结果为:", result)
            elif command == '2':
                result = subtract(num1, num2)
                print("结果为:", result)
            elif command == '3':
                result = multiply(num1, num2)
                print("结果为:", result)
            elif command == '4':
                result = divide(num1, num2)
                print("结果为:", result)
        else:
            print("无效的命令,请重新输入!")
            show_prompt()

if __name__ == '__main__':
    main()

使用示例:

欢迎使用命令行计算器!
请输入您要执行的运算:
1. 加法
2. 减法
3. 乘法
4. 除法
0. 退出计算器

请输入命令(1-4),或者输入0退出:1
请输入第一个数字:2
请输入第二个数字:3
结果为: 5.0

请输入命令(1-4),或者输入0退出:2
请输入第一个数字:5
请输入第二个数字:2
结果为: 3.0

请输入命令(1-4),或者输入0退出:3
请输入第一个数字:4
请输入第二个数字:2
结果为: 8.0

请输入命令(1-4),或者输入0退出:4
请输入第一个数字:10
请输入第二个数字:0
除数不能为0

请输入命令(1-4),或者输入0退出:0
感谢使用命令行计算器,再见!

这个计算器具有基本的错误处理,以防止用户输入无效的命令或无效的数字。计算器使用了Python的内置operator模块来执行四个基本的数学运算。请注意,这个计算器只能处理两个数字之间的运算。