如何通过Python自定义函数实现用户输入整数的加法运算
实现方案说明
这个需求完全可以实现,你编写的原代码存在几处逻辑和语法问题,修正后即可正常运行。
原代码存在的问题
- 两个获取数字的自定义函数不需要传入参数,且你没有将读取到的整数值返回,函数默认返回
None,无法参与算术运算 - 调用
first_num()、sec_num()时传入的num1、num2变量未提前定义,运行时会直接抛出变量未定义的报错 - 你已经将用户输入的选项
choice转换为int类型,后续判断条件中却和字符串'1'做比较,该条件永远不会触发 - 计算得到和之后,打印语句没有输出和的实际值,看不到运算结果
修正后的可运行代码
你可以将两个功能重复的输入获取函数合并为一个通用函数,减少冗余代码,完整可运行代码如下:
# 定义通用函数:接收提示语参数,返回用户输入的整数 def get_input_num(prompt): return int(input(prompt)) print("ARITHMETIC CALCULATOR") print("----------------") print("[1] - Addition") print("[2] - Subtraction") print("[3] - Multiplication") print("[4] - Division") print("----------------") choice = int(input("Enter your choice: ")) # 调用函数获取两个输入数字,用变量接收返回值 num1 = get_input_num("Enter first number: ") num2 = get_input_num("Enter second number: ") if choice == 1: sum_result = num1 + num2 print(f"The sum is: {sum_result}") # 如需支持其他运算可补充对应分支即可,示例减法分支: # elif choice == 2: # sub_result = num1 - num2 # print(f"The difference is: {sub_result}")
运行逻辑说明
- 先定义通用的整数输入获取函数,传入自定义提示语即可返回用户输入的整数,避免重复编写相同逻辑的代码
- 读取用户选择的运算类型后,分别调用函数获取两个输入整数,用变量存储返回结果
- 匹配运算类型后执行对应计算,格式化输出最终结果
内容的提问来源于stack exchange,提问作者rekordings ko
相关产品推荐
相关产品推荐

