成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

python反轉(zhuǎn)一個(gè)三位整數(shù)的多種實(shí)現(xiàn)方案

瀏覽:75日期:2022-06-25 14:31:59

在LintCode上練習(xí)遇到這個(gè)問題,查閱資料找到多種方法,總結(jié)如下。

輸入 輸出 123 321 第一種:整數(shù)方法取余取整實(shí)現(xiàn)

class Solution: ''' @param number: A 3-digit number. @return: Reversed number. ''' def reverseInteger(self, number): g = number%10 #取出個(gè)位數(shù) s = (int(number/10))%10 #取出十位數(shù) b = int(number/100) #取出百位數(shù) return g*100+s*10+bif __name__ == '__main__': so = Solution() print (so.reverseInteger(123))

python不和C語言一樣自動(dòng)截取保留整數(shù),需要用 int 轉(zhuǎn)換一下

第二種:使用字符串切片

def reverseInteger(self, number): number=str(number) result=number[::-1] result=(int(result)) return result

借用字符串的方法處理

第三種:使用棧

def reverseInteger(self, number): number=str(number)#模擬入棧 l=list(number) result='' while len(l)>0: result+=l.pop()#模擬出棧 return int(result)

補(bǔ)充:Python程序:任意輸入一個(gè)三位數(shù),然后把三位數(shù)的位置反轉(zhuǎn)輸出。

第一種方法

把輸入的三位數(shù)百位、十位和個(gè)位依次表示出來,然后將個(gè)位數(shù)字和百位數(shù)字進(jìn)行交換。

#輸入number = 123,輸出321number = int(input(’請(qǐng)輸入一個(gè)三位數(shù):’))a = number%10 #個(gè)位b = number//10%10 #十位c = number//100 #百位re_number = a*100 + b*10 + cprint(’%d的反轉(zhuǎn)數(shù)是:%d’%(number,re_number)) #第一種輸出方式print(’{0}的反轉(zhuǎn)數(shù)是:{1}’.format(number,re_number)) #第二種輸出方式第二種方法

將輸入的三位數(shù)以字符串的形式用list()方法列表化,然后逆序從列表中依次取出個(gè)位、十位、百位,輸出的時(shí)候注意將str類型轉(zhuǎn)換為int類型。

#輸入number = 123,輸出321number = input(’請(qǐng)輸入一個(gè)三位數(shù):’)list1 = list(number) #將輸入的三位數(shù)的字符串存入列表list1.reverse() #將列表元素反轉(zhuǎn)a = int(list1[0]) #取出反轉(zhuǎn)后列表的元素并將其類型轉(zhuǎn)為int類型b = int(list1[1])c = int(list1[2]) #也可以不反轉(zhuǎn)列表,直接反著取出列表中的元素re_number = a*100 + b*10 + cprint(’%s的反轉(zhuǎn)數(shù)是:%s’%(number,re_number))print(’%d的反轉(zhuǎn)數(shù)是:%d’%(int(number),re_number))

以上就是我所想到的輸出3位數(shù)反轉(zhuǎn)數(shù)的方法,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

標(biāo)簽: Python 編程
相關(guān)文章: