Python Abacus Addition Function

  • Share this:

Code introduction


This function uses Python's built-in string and list methods to implement a simple abacus addition. It adds two integers and returns the result. If the result exceeds 10 digits, a carry will be added to the highest digit.


Technology Stack : string (str), list (list), integer (int), string padding (zfill), list slicing ([::-1])

Code Type : Function

Code Difficulty : Beginner


                
                    
def abacus_sum(a, b):
    # 使用Python内置的字符串和列表方法来实现简单的算盘加法
    str_a = str(a)
    str_b = str(b)
    max_len = max(len(str_a), len(str_b))
    str_a = str_a.zfill(max_len)
    str_b = str_b.zfill(max_len)
    
    carry = 0
    result = []
    for i in range(max_len - 1, -1, -1):
        sum_digit = int(str_a[i]) + int(str_b[i]) + carry
        carry = sum_digit // 10
        result.append(str(sum_digit % 10))
    
    if carry:
        result.append(str(carry))
    
    return ''.join(result[::-1])