python高精度加法
时间: 2023-12-10 15:35:59 浏览: 34
以下是Python实现高精度加法的代码:
```python
def add(num1, num2):
# 将两个数字字符串转换为列表,并翻转
num1_list = list(num1)[::-1]
num2_list = list(num2)[::-1]
# 确定两个数字列表的长度
len1 = len(num1_list)
len2 = len(num2_list)
# 确定最大长度
max_len = max(len1, len2)
# 初始化结果列表和进位
result = []
carry = 0
# 从个位开始逐位相加
for i in range(max_len):
# 如果当前位存在,则加上当前位的值
if i < len1:
carry += int(num1_list[i])
if i < len2:
carry += int(num2_list[i])
# 将当前位的结果加入结果列表,并更新进位
result.append(str(carry % 10))
carry //= 10
# 如果最后还有进位,则加入结果列表
if carry:
result.append(str(carry))
# 将结果列表翻转并转换为字符串
return ''.join(result[::-1])
```
使用示例:
```python
num1 = '12345678901234567890'
num2 = '98765432109876543210'
print(add(num1, num2)) # 输出:111111111111111111100
```