python_字符串数字求和
有两个字符串类型的数字,实现一个方法将它们进行相加,并返回相加后的数值。
情况1:字符串中有小数,不考虑进位
def add_string(num1, num2):
num1_int = float(num1)
num2_int = float(num2)
sum_int = num1_int + num2_int
# round() 函数对结果进行四舍五入,且保留两位小数
sum_str = str((round(sum_int, 2)))
return sum_str
sum3 = add_string('100', '1')
print(sum3)
情况2:考虑数据的长度问题,有进位,不考虑小数
def add_strings(num1, num2):
# 获取两个字符串的长度
len1 = len(num1)
len2 = len(num2)
# 处理长度不一致的情况
if len1 > len2:
num2 = '0' * (len1 - len2) + num2
else:
num1 = '0' * (len2 - len1) + num1
# 进行字符串相加
result = ''
carry = 0
for i in range(max(len1, len2)):
# 将当前位置的数字和进位相加
temp = int(num1[i]) + int(num2[i]) + carry
# 处理进位
carry = temp // 10
result += str(temp % 10)
# 如果还有进位,添加到结果的开头
if carry > 0:
result = str(carry) + result
return result
print(add_strings('123', '456'))
print(add_strings('12345', '16'))

浙公网安备 33010602011771号