首页 > 解决方案 > 如何获取一个 int,将其拆分为数字,进行一些算术运算,然后将其附加到新的 int

问题描述

任务:

给定一个整数作为输入,添加代码以获取各个数字并增加 1。

例如,如果数字为 5,则变为 6。请注意,如果数字为 9,则变为 0。

更多示例

输入:2342 输出:3453

输入:9999 输出:0

输入:835193 输出:946204

我编写了这个函数,但我确定这不是编写此代码的方法,我正在寻找一些技巧来以更简洁、有效的方式编写它。请指教。

def new_num (num):
    newnum = []
    for i in range (0,len(str(num))):
        upper = num%10
        print(upper)
        num = int(num/10)
        print(num)
        if upper == 9:
            upper = 0
            newnum.append(upper)
        else:
            upper+=1
            newnum.append(upper)
    strings = [str(newnum) for newnum in newnum]
    a_string = "".join(strings)
    an_integer = str(a_string)
    new_int = int(an_integer[::-1])
    return(new_int)

标签: pythonfunction

解决方案


你可以这样做:-

n = '2349'
nn = ''
for i in n:
    nn += '0' if i == '9' else str(int(i) + 1)
print(nn)

推荐阅读