Python練習(xí)實(shí)例82 | 八進(jìn)制數(shù)如何轉(zhuǎn)化為十進(jìn)制數(shù)?

八進(jìn)制數(shù),其實(shí)是一種以8為進(jìn)制的數(shù)字,逢8進(jìn)1,八進(jìn)制轉(zhuǎn)十進(jìn)制的算法,各位小伙伴們其實(shí)百度搜一下相關(guān)的視頻,就會(huì)出來一大堆,比如下面的一個(gè)視頻截圖,顯示了主要的算法。

算法.png

使用Python來進(jìn)行計(jì)算,主要有兩種算法,一種是直接通過int來實(shí)現(xiàn)八進(jìn)制到十進(jìn)制的轉(zhuǎn)換,這里主要考察的Python內(nèi)置函數(shù)int的用法,通過設(shè)置內(nèi)置函數(shù)的參數(shù)可以自動(dòng)實(shí)現(xiàn)八進(jìn)制及其他進(jìn)制轉(zhuǎn)換為十進(jìn)制的方法。

第一種算法:通過Python內(nèi)置函數(shù)int實(shí)現(xiàn)。

代碼的實(shí)現(xiàn)過程如下:

# 八進(jìn)制轉(zhuǎn)換為十進(jìn)制
# 此處主要是考察Python的內(nèi)置函數(shù),int的用法,int通過設(shè)置內(nèi)置的參數(shù)可以自動(dòng)實(shí)現(xiàn)八進(jìn)制,及其他進(jìn)制轉(zhuǎn)換為十進(jìn)制的方法

a = input("請(qǐng)輸入一個(gè)八進(jìn)制數(shù):") # 此時(shí)的數(shù)為一個(gè)字符串,注意,不是int(input)
b = int(a,8) # 將這個(gè)八進(jìn)制數(shù),int一下,也就是轉(zhuǎn)換為十進(jìn)制數(shù),將第二個(gè)參數(shù)換成2,則可以實(shí)現(xiàn)二進(jìn)制轉(zhuǎn)換為十進(jìn)制,換成16,可以實(shí)現(xiàn)16進(jìn)制轉(zhuǎn)換為十進(jìn)制。
print(b)

運(yùn)算的結(jié)果如下圖:

C:\Python\python.exe "C:/Users/Administrator/Desktop/Python 練習(xí)實(shí)例100題/練習(xí)82.py"
請(qǐng)輸入一個(gè)八進(jìn)制數(shù):10
8

Process finished with exit code 0
第二種算法:通過傳統(tǒng)的算法實(shí)現(xiàn)。

具體實(shí)現(xiàn)的代碼如下:

a = input('請(qǐng)輸入一個(gè)八進(jìn)制數(shù):')
sum = 0
for i in range(len(a)-1,-1,-1):
    sum += int(a[0])*(8**i)
print('%d 的十進(jìn)制為:%d' % (int(a), sum))

2020年5月10
北京市通州區(qū)京貿(mào)中心

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容