python反轉(zhuǎn)一個(gè)三位整數(shù)的多種實(shí)現(xiàn)方案
在LintCode上練習(xí)遇到這個(gè)問(wèn)題,查閱資料找到多種方法,總結(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語(yǔ)言一樣自動(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è)位依次表示出來(lái),然后將個(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類(lèi)型轉(zhuǎn)換為int類(lèi)型。
#輸入number = 123,輸出321number = input(’請(qǐng)輸入一個(gè)三位數(shù):’)list1 = list(number) #將輸入的三位數(shù)的字符串存入列表list1.reverse() #將列表元素反轉(zhuǎn)a = int(list1[0]) #取出反轉(zhuǎn)后列表的元素并將其類(lèi)型轉(zhuǎn)為int類(lèi)型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ò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章:
1. 利用promise及參數(shù)解構(gòu)封裝ajax請(qǐng)求的方法2. Nginx+php配置文件及原理解析3. windows服務(wù)器使用IIS時(shí)thinkphp搜索中文無(wú)效問(wèn)題4. .NET中l(wèi)ambda表達(dá)式合并問(wèn)題及解決方法5. JSP數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析6. 淺談python出錯(cuò)時(shí)traceback的解讀7. python matplotlib:plt.scatter() 大小和顏色參數(shù)詳解8. Ajax實(shí)現(xiàn)表格中信息不刷新頁(yè)面進(jìn)行更新數(shù)據(jù)9. Python importlib動(dòng)態(tài)導(dǎo)入模塊實(shí)現(xiàn)代碼10. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向
