如何编写Python函数实现两个字符串数字相加并返回整数?
解决字符串数字相加并转为整数的问题
原代码存在的问题:
- 函数定义时不能直接将字符串字面量(
"50"、"100")作为参数名,需使用合法的参数变量名 - 函数内部硬编码了字符串值,没有使用传入的参数,失去了函数的复用性
- 对单个字符串数字执行
split(" ")完全多余,分割后还是原字符串的列表,没有意义 - 缺少核心的相加逻辑,也没有返回计算结果的语句
- 调用函数时使用了未定义的变量
numbers、numbers1,且错误地将函数对象赋值给result
修正后的基础实现代码:
def sum_to_int(str_num1, str_num2): # 将两个字符串数字转为整数后相加 total = int(str_num1) + int(str_num2) # 返回整数结果 return total # 调用函数并传入字符串数字参数 result = sum_to_int("50", "100") print(result) # 输出:150
代码说明:
- 函数定义时使用
str_num1、str_num2作为参数,接收外部传入的字符串数字 - 用
int()函数将每个字符串数字转为整数,再执行加法运算 - 通过
return语句返回计算得到的整数结果 - 调用函数时直接传入目标字符串
"50"和"100",接收返回值后打印输出
如果需要处理字符串包含多个空格分隔数字的场景,可以修改为:
def sum_to_int(str_num1, str_num2): # 分割字符串并转为整数列表,再分别求和后相加 sum1 = sum(int(num) for num in str_num1.split()) sum2 = sum(int(num) for num in str_num2.split()) return sum1 + sum2 # 示例:处理包含多个数字的字符串 result = sum_to_int("50 20", "100 30") print(result) # 输出:200
内容的提问来源于stack exchange,提问作者Merc Number 1
相关产品推荐
相关产品推荐

