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

您的位置:首頁技術文章
文章詳情頁

一篇教程教你學會Python進制轉換(十進制轉二進制、八進制、十六進制)

瀏覽:93日期:2022-06-19 18:05:01
一、導言

導語:

在計算機進行數據交換時,常常會有一個進制轉換的過程,我們知道計算機只認0 和 1.在內存系統中,基本基于二進制進行運算的,但是有時候數據過于龐大,為了方便存儲管理,計算機會使用十六進制存儲數據,但是怎么實現數據轉換呢?我們人類由十根手指頭,所以自然就使用十進制啦,每當我們數數字到10之后,于是就重0 開始繼續數,所以逢十進一就這么來了。

對于其它進制呢,也是同樣的,比如最常見的二進制,也就是逢二進一,慢慢來,依次類推,所以數學的世界是多么的奇妙呀!

今天給大家帶來的是使用 Python 實現進制轉換,內容包括如下:

dec(十進制)—> bin(二進制)dec(十進制)—> oct(八進制)dec(十進制)—> hex(十六進制)

二、各種進制介紹

在轉換之前,我們先了解以下各種進制

十進制(Decimal)

我們所熟知的十進制,其實是從 0 開始,數到 9 之后,就跳到 10,這樣就變成了 10,數數大家總會把

二進制(Binary)

二進制同理,從 0 開始也就是 00(前面的一個0可以省去,但是為了更好的描述,所以保留),到 01,也變成了 10【對應十進制中的 3】,然后是 11【對應十進制中的 4】,100【十進制中的5】。。。以此類推

因為 二進制 的英文單詞是 binary,所以在計算機運算的過程中,使用二進制會用如下方法,0b11(4),0b1101(13)等等

八進制(Octal)

理解了二進制,在理解八進制就很容易了,八進制是逢八進一,范圍是 0~7,對比一下二進制,就很好理解啦!!

十六進制(Hexadecimal)

十六進制就可能會相對復雜一點點,十六進制是用數字 0~9 和 英文字母 A - F(大小寫隨意) 表示,因此 A代表 10, F代表 15。為什么在計算機領域中,十六進制用途會如此廣泛呢?

給大家看一個對比:

一篇教程教你學會Python進制轉換(十進制轉二進制、八進制、十六進制)

當數據比較大的時候,二進制顯然不再那么使用,再看使用十六進制,就簡短很多。

十六進制的運用領域可不止如此,比如原畫師調色的時候,如果使用 RGB 三原色的話,那就會有 256 x 256 x 256 種組合,我們就可以使用十六進制,把每一種顏色對比轉換成 十六進制字符,就會方便很多,以下是我之前調色的時候寫的一個很簡單一個 C 語言小程序,呃,似乎有點跑題了,哈哈,不管了

#include<stdio.h>#include<stdlib.h> int main(){printf('rgb三原色轉16進制n');int a,b,c,d;while(d != 2){printf('輸入1繼續,輸入2退出n');scanf('%d',&d);scanf('%d%d%d',&a,&b,&c);printf('[%x %x %x]n',a,b,c); //%x 可以直接把我們輸入的十進制轉換為 十六進制}return 0;} 三、使用 Python 代碼完成轉換

3.1 十進制轉換為二進制

我記得不太清楚是啥時候第一次學進制轉換的,進制轉換常用的方法就是對 2 取余數,然后得到余數反轉連在一起就是 我們所需要的二進制,舉個例子,比如我要計算 十進制數 13 的 二進制是多少?

一篇教程教你學會Python進制轉換(十進制轉二進制、八進制、十六進制)

這也是老師教我們的方法,也是我們第一次接觸進制轉換的時候,用目標數 num 對 2求 余數,直到 商為 0 的時候,結束,然后將余數反向組合輸出,及為我們所求的 2 進制數。有的同學會問,我怎么就能這么確定這就是 13 對應的 2 進制數呢?

答曰:

由于二進制的特殊性,數字從右邊往左邊數,依次對應 20 x 1 + 21 x 0 + 22x 1 + 23 x 1 = 1 +4 +8 = 13, 給大家一個速記口訣,1,2,4,8,16,32,64,128,256,512,1024。分別是 20~ 210對應的值

所以有了思路,我們就可以愉快的敲代碼了

# 十進制整數轉二進制def dec_to_bin(num): #函數名做到見其名知其意l = [] # 創建一個空列表if num<0: # 是負數轉換成整數return '-'+ dec_to_bin(abs()) # 如過是負數,先轉換成正數while True:

num, reminder = divmod(num,2) # 短除法,對2求,分別得到除數 和 余數、這是 Python 的特有的一個內置方法,分別可以到商 及 余數

l.append(str(reminder)) # 把獲得的余數 存入字符串

if num == 0: # 對應了前面的話,當商為 0時,就結束啦

return “”.join(l[::-1]) # 對列表中的字符串進行逆序拼接,得到一個二進制字符串

3.2 十進制轉八進制

理解了二進制的轉換,八進制一樣不難。同樣是目標數 num對八 求商,留余數,照這個思路走。檢驗的時候,一樣,把 2n把2 替換成 8即可。

看代碼:

和 二進制 的基本沒啥卻別

# 十進制轉八進制def dec_to_oct(num): l = [] if num<0: return '-'+ dec_to_bin(abs(num)) # 如過是負數,先轉換成正數 while True: num, reminder = divmod(num,8) # 短除法,對2求,分別得到除數 和 余數、 l.append(str(reminder)) # 把獲得的余數 存入字符串 if num == 0: return ''.join(l[::-1]) # 對列表中的字符串進行逆序拼接,得到一個二進制字符串

3.3 十進制轉十六進制

前面說過,十六進制相比二進制,八進制會復雜一點,但是方法是一樣的

# 十進制轉十六進制(這個相對麻煩一點,因為,十六進制包含 A-F,大小寫不敏感)def dec_to_hex(num): base = [str(x) for x in range(10)] +[chr(x) for x in range(ord(’A’),ord('A')+6)] # 前者把 0 ~ 9 轉換成字符串存進列表 base 里,后者把 A ~ F 存進列表 l = [] if num<0: return '-'+dec_to_hex(abs(num)) while True: num,rem = divmod(num,16) # 求商 和 留余數 l.append(base[rem]) if num == 0: return ''.join(l[::-1])

最后看一下運行結果,是不是很方便呢?當然 Python 有內置的方法,比如我們直接輸入 十進制數,通過 bin(n) 轉為二進制,oct(n) 轉為 八進制,hex(n) 轉為十六進制。但是原理了解以下還是很有必要的,你說是不是呢?

一篇教程教你學會Python進制轉換(十進制轉二進制、八進制、十六進制)

到此這篇關于一篇教程教你學會Python進制轉換(十進制轉二進制、八進制、十六進制)的文章就介紹到這了,更多相關Python進制轉換內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
麻豆精品在线看| 亚洲高清免费| 亚洲成色www久久网站| 日韩欧美一卡二卡| 极品少妇一区二区| 欧美日韩另类一区| 日一区二区三区| 国产精品一区二区三区免费观看 | 在线观看成人一级片| 中文字幕高清一区| 欧美阿v一级看视频| 国产亚洲精品资源在线26u| 99国产精品久久| 久久青草欧美一区二区三区| 97成人超碰视| 国产亚洲精品aa| 欧美三区美女| 国产精品久久久久永久免费观看| 女人香蕉久久**毛片精品| 久久午夜色播影院免费高清| 成人免费三级在线| 欧美电影免费观看高清完整版在线| 国产精品12区| 欧美videos中文字幕| 波多野结衣的一区二区三区| 久久久久久影视| 午夜激情一区| 亚洲久本草在线中文字幕| 日韩一区二区久久| 亚洲国产综合91精品麻豆| 久久人人97超碰国产公开结果| 婷婷开心激情综合| 欧美在线观看18| 极品销魂美女一区二区三区| 日韩一区二区在线观看| www.日韩在线| 国产精品美日韩| 一区二区三区四区五区精品视频| 亚洲小说春色综合另类电影| 色噜噜狠狠成人网p站| 国产一区二区调教| 久久婷婷成人综合色| 欧美日韩精品久久| 亚洲男女毛片无遮挡| 噜噜噜久久亚洲精品国产品小说| 天堂在线亚洲视频| 欧美日韩不卡在线| 国v精品久久久网| 国产亚洲一区二区在线观看| 国内精品久久久久久久97牛牛 | 欧美一区二区成人| 色综合中文字幕国产| 精品女同一区二区| 亚洲午夜精品一区二区| 亚洲成av人片一区二区| 欧美日本一区二区三区| 91香蕉视频污在线| 一区二区三区 在线观看视频| 色综合久久99| 成人美女在线观看| 亚洲免费色视频| 91九色02白丝porn| 成人性视频免费网站| 国产精品全国免费观看高清 | 爽爽淫人综合网网站| 91精品黄色片免费大全| 欧美日韩综合| 日韩精品免费专区| 久久亚洲春色中文字幕久久久| 99国内精品久久久久久久软件| 日本美女视频一区二区| 日韩欧美国产高清| 一色屋精品视频在线观看网站| 亚洲成人资源在线| 日韩欧美国产一二三区| 亚洲激情影院| 美女国产一区二区| 久久麻豆一区二区| 免费日韩av片| 成年人网站91| 亚洲一本大道在线| 日韩一区二区三区av| 99国产精品久久久久久久成人热| 捆绑变态av一区二区三区| 2021中文字幕一区亚洲| 国产婷婷精品| 成人激情免费网站| 亚洲综合一区二区三区| 日韩一区二区三区在线| 亚洲精品中文字幕在线| 国产尤物一区二区在线| 国产精品久久午夜夜伦鲁鲁| 欧美午夜视频网站| 欧美少妇一区| 国产中文字幕精品| 亚洲美女屁股眼交3| 欧美日韩国产精品成人| 伊人蜜桃色噜噜激情综合| 日韩美女视频一区二区| 9191久久久久久久久久久| 国内一区二区在线视频观看| 免费成人在线观看| 国产欧美一区在线| 欧美日韩国产综合视频在线观看 | 国产v综合v亚洲欧| 亚洲午夜在线电影| 2020国产成人综合网| 色综合久久88色综合天天免费| 色综合色狠狠天天综合色| 日本最新不卡在线| 成人免费小视频| 欧美岛国在线观看| 色婷婷综合久色| 欧美日韩国产亚洲一区| 婷婷综合五月天| 欧美国产欧美综合| 正在播放亚洲一区| 国产精品久久久久9999高清| eeuss国产一区二区三区| 日韩在线观看一区二区| 国产精品国产a| 精品国产百合女同互慰| 欧美影片第一页| 国产日韩亚洲欧美精品| 色综合天天综合狠狠| 国产一区欧美日韩| 污片在线观看一区二区| 国产欧美一区二区三区在线老狼| 欧美日韩午夜在线视频| 国产日韩欧美亚洲一区| 午夜激情一区| 成人av网站免费| 久久精品国产亚洲5555| 亚洲一区在线观看免费观看电影高清 | 日韩精品一级中文字幕精品视频免费观看 | 91精品国产一区二区三区| 麻豆成人精品| 韩日午夜在线资源一区二区| 成人午夜电影小说| 免费成人在线播放| 亚洲一级二级三级| 国产精品女主播在线观看| 日韩午夜av电影| 欧美日韩国产乱码电影| 色成人在线视频| 国产日韩免费| 国产字幕视频一区二区| 99久久综合色| 国产精品一二三| 久久国产剧场电影| 五月天亚洲精品| 亚洲一二三四区不卡| 中文字幕佐山爱一区二区免费| 国产亚洲婷婷免费| 精品国产免费人成电影在线观看四季| 欧美性色黄大片| 久久久国产精品一区二区中文 | 99综合视频| 精品999成人| 欧美日本一区| 色综合久久综合| 成人一道本在线| 国产一区二区三区电影在线观看| 理论片日本一区| 奇米精品一区二区三区在线观看| 亚洲一区二区三区四区不卡| 中文字幕一区av| 中文字幕在线一区免费| 久久久av毛片精品| 欧美变态tickle挠乳网站| 日韩三级高清在线| 日韩一区二区三区电影在线观看 | 午夜亚洲福利老司机| 亚洲欧美激情在线| 综合亚洲深深色噜噜狠狠网站| 国产欧美视频一区二区| 国产日本欧美一区二区| 精品免费国产二区三区| 精品国产一区二区三区久久久蜜月| 日韩亚洲欧美高清| 日韩久久久精品| 日韩欧美一二三区| 日韩精品一区二区在线| 精品女同一区二区| 日韩精品一区二区三区在线| 91精品国产综合久久久久| 9191久久久久久久久久久| 欧美在线观看视频一区二区三区| 在线视频你懂得一区二区三区| 日本韩国欧美三级| 一本色道a无线码一区v| 久久精品成人| 久久精彩视频| 色999日韩国产欧美一区二区| 色av成人天堂桃色av| 欧美日韩午夜在线| 精品国产百合女同互慰| 欧美经典三级视频一区二区三区| 中文字幕在线不卡国产视频| 中文天堂在线一区|