日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

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

一篇教程教你學(xué)會(huì)Python進(jìn)制轉(zhuǎn)換(十進(jìn)制轉(zhuǎn)二進(jìn)制、八進(jìn)制、十六進(jìn)制)

瀏覽:136日期:2022-06-19 18:05:01
一、導(dǎo)言

導(dǎo)語:

在計(jì)算機(jī)進(jìn)行數(shù)據(jù)交換時(shí),常常會(huì)有一個(gè)進(jìn)制轉(zhuǎn)換的過程,我們知道計(jì)算機(jī)只認(rèn)0 和 1.在內(nèi)存系統(tǒng)中,基本基于二進(jìn)制進(jìn)行運(yùn)算的,但是有時(shí)候數(shù)據(jù)過于龐大,為了方便存儲(chǔ)管理,計(jì)算機(jī)會(huì)使用十六進(jìn)制存儲(chǔ)數(shù)據(jù),但是怎么實(shí)現(xiàn)數(shù)據(jù)轉(zhuǎn)換呢?我們?nèi)祟愑墒种割^,所以自然就使用十進(jìn)制啦,每當(dāng)我們數(shù)數(shù)字到10之后,于是就重0 開始繼續(xù)數(shù),所以逢十進(jìn)一就這么來了。

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

今天給大家?guī)淼氖鞘褂?Python 實(shí)現(xiàn)進(jìn)制轉(zhuǎn)換,內(nèi)容包括如下:

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

二、各種進(jìn)制介紹

在轉(zhuǎn)換之前,我們先了解以下各種進(jìn)制

十進(jìn)制(Decimal)

我們所熟知的十進(jìn)制,其實(shí)是從 0 開始,數(shù)到 9 之后,就跳到 10,這樣就變成了 10,數(shù)數(shù)大家總會(huì)把

二進(jìn)制(Binary)

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

因?yàn)?二進(jìn)制 的英文單詞是 binary,所以在計(jì)算機(jī)運(yùn)算的過程中,使用二進(jìn)制會(huì)用如下方法,0b11(4),0b1101(13)等等

八進(jìn)制(Octal)

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

十六進(jìn)制(Hexadecimal)

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

給大家看一個(gè)對(duì)比:

一篇教程教你學(xué)會(huì)Python進(jìn)制轉(zhuǎn)換(十進(jìn)制轉(zhuǎn)二進(jìn)制、八進(jìn)制、十六進(jìn)制)

當(dāng)數(shù)據(jù)比較大的時(shí)候,二進(jìn)制顯然不再那么使用,再看使用十六進(jìn)制,就簡(jiǎn)短很多。

十六進(jìn)制的運(yùn)用領(lǐng)域可不止如此,比如原畫師調(diào)色的時(shí)候,如果使用 RGB 三原色的話,那就會(huì)有 256 x 256 x 256 種組合,我們就可以使用十六進(jìn)制,把每一種顏色對(duì)比轉(zhuǎn)換成 十六進(jìn)制字符,就會(huì)方便很多,以下是我之前調(diào)色的時(shí)候?qū)懙囊粋€(gè)很簡(jiǎn)單一個(gè) C 語言小程序,呃,似乎有點(diǎn)跑題了,哈哈,不管了

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

3.1 十進(jìn)制轉(zhuǎn)換為二進(jìn)制

我記得不太清楚是啥時(shí)候第一次學(xué)進(jìn)制轉(zhuǎn)換的,進(jìn)制轉(zhuǎn)換常用的方法就是對(duì) 2 取余數(shù),然后得到余數(shù)反轉(zhuǎn)連在一起就是 我們所需要的二進(jìn)制,舉個(gè)例子,比如我要計(jì)算 十進(jìn)制數(shù) 13 的 二進(jìn)制是多少?

一篇教程教你學(xué)會(huì)Python進(jìn)制轉(zhuǎn)換(十進(jìn)制轉(zhuǎn)二進(jìn)制、八進(jìn)制、十六進(jìn)制)

這也是老師教我們的方法,也是我們第一次接觸進(jìn)制轉(zhuǎn)換的時(shí)候,用目標(biāo)數(shù) num 對(duì) 2求 余數(shù),直到 商為 0 的時(shí)候,結(jié)束,然后將余數(shù)反向組合輸出,及為我們所求的 2 進(jìn)制數(shù)。有的同學(xué)會(huì)問,我怎么就能這么確定這就是 13 對(duì)應(yīng)的 2 進(jìn)制數(shù)呢?

答曰:

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

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

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

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

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

if num == 0: # 對(duì)應(yīng)了前面的話,當(dāng)商為 0時(shí),就結(jié)束啦

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

3.2 十進(jìn)制轉(zhuǎn)八進(jìn)制

理解了二進(jìn)制的轉(zhuǎn)換,八進(jìn)制一樣不難。同樣是目標(biāo)數(shù) num對(duì)八 求商,留余數(shù),照這個(gè)思路走。檢驗(yàn)的時(shí)候,一樣,把 2n把2 替換成 8即可。

看代碼:

和 二進(jìn)制 的基本沒啥卻別

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

3.3 十進(jìn)制轉(zhuǎn)十六進(jìn)制

前面說過,十六進(jìn)制相比二進(jìn)制,八進(jìn)制會(huì)復(fù)雜一點(diǎn),但是方法是一樣的

# 十進(jìn)制轉(zhuǎn)十六進(jìn)制(這個(gè)相對(duì)麻煩一點(diǎn),因?yàn)椋M(jìn)制包含 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 轉(zhuǎn)換成字符串存進(jìn)列表 base 里,后者把 A ~ F 存進(jìn)列表 l = [] if num<0: return '-'+dec_to_hex(abs(num)) while True: num,rem = divmod(num,16) # 求商 和 留余數(shù) l.append(base[rem]) if num == 0: return ''.join(l[::-1])

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

一篇教程教你學(xué)會(huì)Python進(jìn)制轉(zhuǎn)換(十進(jìn)制轉(zhuǎn)二進(jìn)制、八進(jìn)制、十六進(jìn)制)

到此這篇關(guān)于一篇教程教你學(xué)會(huì)Python進(jìn)制轉(zhuǎn)換(十進(jìn)制轉(zhuǎn)二進(jìn)制、八進(jìn)制、十六進(jìn)制)的文章就介紹到這了,更多相關(guān)Python進(jìn)制轉(zhuǎn)換內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩影片在线观看| 99视频在线精品国自产拍免费观看| 麻豆久久一区| 日本成人在线不卡视频| 香蕉久久久久久久av网站| 欧美高清一区| 不卡中文一二三区| 激情欧美国产欧美| 亚洲午夜av| 国产99精品一区| 999视频精品| 国产真实久久| 夜夜嗨一区二区三区| 欧美日韩精品一本二本三本| 99国产精品久久久久久久| 樱桃成人精品视频在线播放| 亚洲欧洲一区| 青草国产精品久久久久久| 国产日韩视频| 日韩高清不卡| 蜜臀av性久久久久蜜臀aⅴ四虎| 9国产精品视频| 国产精品久久免费视频| zzzwww在线看片免费| 亚洲精选91| 久久成人一区| 日韩av中文在线观看| 老司机免费视频一区二区| 久久中文字幕二区| 91欧美极品| 久草免费在线视频| 亚洲久久视频| 日韩不卡视频在线观看| 免费成人av在线播放| 国产一区2区| 日韩中文一区二区| 亚洲精品在线影院| 欧美亚洲网站| 黄色成人在线网址| 国产不卡av一区二区| 99精品在线| 久久久免费人体| 亚洲精品成人一区| 午夜久久美女| 伊人久久在线| 欧美交a欧美精品喷水| 国产精品日韩久久久| 麻豆mv在线观看| 国产麻豆一区| 五月国产精品| 最新亚洲激情| 日韩免费福利视频| 韩国女主播一区二区三区| 日韩精品欧美大片| 老牛国产精品一区的观看方式| 日韩av网站在线观看| 亚洲综合日本| 亚洲欧美日本国产专区一区| 久久精品高清| 日韩高清中文字幕一区二区| 粉嫩av一区二区三区四区五区| 国产一卡不卡| 日本视频一区二区| 日本aⅴ精品一区二区三区| | 狠狠干综合网| 免费欧美一区| 亚洲精品极品少妇16p| 国产一区二区三区久久久久久久久| 日韩不卡在线观看日韩不卡视频| 亚洲日产av中文字幕| 91精品丝袜国产高跟在线| 日精品一区二区三区| 婷婷精品久久久久久久久久不卡| 日本不卡视频一二三区| 日韩精品一区二区三区免费视频| 国产日产一区| 伊人久久国产| 亚洲综合欧美| 精品一区二区三区中文字幕在线| 欧美激情久久久久久久久久久| 国产精品主播| 国产亚洲一区二区手机在线观看 | 日本蜜桃在线观看视频| 天堂√8在线中文| 亚洲激情不卡| 国产麻豆一区二区三区精品视频| 精品国产精品久久一区免费式 | 日韩精品一区二区三区免费视频 | 最新中文字幕在线播放| 91精品久久久久久久久久不卡| 婷婷激情综合| 免费的成人av| 国产精选在线| 视频在线观看一区| 九九久久国产| 久久亚洲视频| 精品久久久网| 四虎成人精品一区二区免费网站| 精品精品99| 91精品福利观看| 久久久蜜桃一区二区人| 欧美天堂在线| 99视频在线精品国自产拍免费观看| 久久av导航| 亚洲人成精品久久久| 亚洲电影有码| 亚洲久草在线| 欧美日韩国产一区精品一区| 久久爱www成人| 亚洲精品黄色| 国产精品日韩久久久| av中文资源在线资源免费观看| 亚洲精品乱码久久久久久蜜桃麻豆| 久久国产精品美女| 欧美日韩 国产精品| 国产调教精品| 高清一区二区三区| 欧美综合另类| 欧美日韩中出| 一区二区三区四区日韩| 久久精品卡一| 蜜臀av性久久久久蜜臀aⅴ流畅| 精品国产乱码久久久| 国产精品18| 日韩精品成人在线观看| 免费日韩av片| 国产精品社区| 视频一区二区国产| 免费日韩精品中文字幕视频在线| 日韩av一级| 99久久婷婷| 亚洲深夜影院| 蜜臀久久99精品久久久久宅男| 国产一区二区精品| 自由日本语亚洲人高潮| 国产一区二区高清| 欧美一区二区三区激情视频| 欧美不卡高清一区二区三区| 极品av在线| 欧美女激情福利| 美女被久久久| 日韩高清电影免费| 国产日韩免费| 国产一区二区三区亚洲| 一区二区精品伦理...| 日韩精品欧美| 蜜桃av一区| 日韩黄色免费网站| 卡一卡二国产精品| zzzwww在线看片免费| 亚洲精品91| 亚洲黄页一区| 日本欧美大码aⅴ在线播放| 卡一卡二国产精品| 日韩三区免费| 亚洲少妇自拍| 久久国产三级精品| 成人在线视频中文字幕| 欧美一区三区| 日本中文字幕视频一区| 国产福利一区二区三区在线播放| 黄色在线观看www| 亚洲精品高潮| 成人羞羞视频播放网站| 日本一区二区三区视频在线看 | 亚洲日韩视频| 国产在线观看www| 日韩1区2区3区| 欧美日韩在线二区| 日韩av不卡在线观看| 久久uomeier| 国产亚洲高清一区| 午夜欧美精品久久久久久久| 国产欧美在线| 久久成人一区| 久久精品国产大片免费观看| 欧美精品影院| 蜜桃久久av一区| 99久久夜色精品国产亚洲1000部| 国产一区成人| 欧美一区二区三区高清视频| 国产精品成人自拍| 日本在线成人| 欧美日韩免费观看一区=区三区| 国产精品久久久久蜜臀| 国产精品亚洲二区| 日韩黄色在线观看| 亚洲精品乱码| 中文不卡在线| 亚洲一级在线| 欧美专区一区二区三区| 日韩一区电影| 日韩国产在线| 日韩中文影院| 欧美激情福利| 久久麻豆视频| 亚洲天堂资源| 久久男女视频| 99精品电影|