1. 程式人生 > >【Python】數學基礎

【Python】數學基礎

一、整數反轉:

任意整數每位的數字倒轉,如:-1230 輸出 -321

假定數值範圍為 [−2^{31}2^{31} − 1],如果反轉後整數溢位那麼就返回 0。

思路:將數字轉成字串後利用列表功能進行倒轉,注意0和負號的特殊處理。

重點:列表順序相反操作 x[len(x)-1::-1],從最左到第len(x)項倒轉,如x = [-1230], len(x) - 1 = 4, x[4::-1] = [0321-]

def reverse(self, x):
    """
    :type x: int
    :rtype: int
    """
    if x == 0:
        return 0
    else:
        str_x = str(x)
        x = ''
        if str_x[0] == '-':
            x += '-'
        x += str_x[len(str_x)-1::-1].lstrip("0").rstrip("-")
        x = int(x)
        if -2**31 <= x <= 2**31-1:
            return x
        else:
            return 0