?
在 Python中,十進制數(shù)可以轉(zhuǎn)換成二進制數(shù)。例如: 但是,十進制數(shù)不是直接轉(zhuǎn)換成二進制,而是先轉(zhuǎn)換成二進制數(shù),再轉(zhuǎn)換成十進制。接下來我們來看看具體的實現(xiàn)方法: 首先我們來看一個例子: 上面代碼中,使用了循環(huán)遍歷的方法。從這個例子中我們可以發(fā)現(xiàn),需要遍歷一次。因為每個數(shù)字都是16個位,所以一共需要遍歷64次。在 Python中,使用循環(huán)的方式實現(xiàn)需要遍歷一次的代碼如下: 因此,可以看到第一行的代碼使用了循環(huán)遍歷的方法實現(xiàn)了16次遍歷,第二行使用了二進制遍歷的方法實現(xiàn)了16次遍歷。 因此我們可以看到,只需要用兩行代碼就完成了一次循環(huán)遍歷。
-
一、十進制數(shù)轉(zhuǎn)換成二進制
這里使用的方法是 float (),因為這種方法只需要在數(shù)組的最后面放上一個數(shù),就可以對這個數(shù)進行轉(zhuǎn)換。下面是一個例子: 第一行:輸入十進制數(shù)字0到9,輸出二進制數(shù)字0到9。上面的代碼使用的是 float ()方法來實現(xiàn)十進制轉(zhuǎn)二進制的。這里使用了一個方法 float ()來對轉(zhuǎn)換后的二進制數(shù)據(jù)進行處理。 在上面的代碼中用了三個方法來對數(shù)據(jù)進行處理: 使用 float ()方法轉(zhuǎn)換后得到的二進制數(shù)據(jù)是16位,因此需要將其轉(zhuǎn)換成二進制數(shù)后再進行存儲。 使用 float ()方法將16位的二進制數(shù)轉(zhuǎn)換成了10位的二進制數(shù)。
-
二、循環(huán)遍歷
循環(huán)遍歷的實現(xiàn)原理是:一個字符串如果出現(xiàn)了兩次,就會被重復執(zhí)行,直到出現(xiàn)第三次為止。 但是這里出現(xiàn)了一個問題:為什么要在第二行中使用循環(huán)遍歷呢? 這是因為:我們在第一行中使用了循環(huán)遍歷的方式,這里只需要用到第一行中的第一個字符串就可以實現(xiàn)16次遍歷。但是,我們還需要先把第二行的第二個字符串也加進來。 因此,這里的第二個字符串必須要加進來。 當然,也可以使用二進制遍歷的方法實現(xiàn)循環(huán)遍歷:
-
1、十進制轉(zhuǎn)二進制
既然十進制轉(zhuǎn)二進制是循環(huán)遍歷,那么我們可以直接用循環(huán)的方式來實現(xiàn)十進制轉(zhuǎn)二進制。在上面的例子中,我們只需要把第二行的第二個字符串也加進來就可以了,但是在上面的例子中,我們還需要把第二行的第一個字符串也加進來。因為這里要將十進制轉(zhuǎn)二進制,所以我們需要用到第二行第一個字符串: 這就是循環(huán)遍歷了,接下來我們通過 if語句來實現(xiàn)循環(huán)遍歷: 在這個例子中,我們使用了 if語句來判斷第二行的第一個字符串是否為0,如果為0的話,則進入循環(huán)遍歷;如果不是0的話,則把第二行的第二個字符串也加進來。
-
-
三、使用二進制數(shù)據(jù)
十進制數(shù)轉(zhuǎn)換成二進制數(shù)的方法,我們可以使用下面的方法進行嘗試: 上面代碼中,使用了循環(huán)遍歷的方法,一共需要遍歷16次,最后使用了二進制的方法,只需要兩行代碼就可以完成。如果我們想要遍歷更多的次數(shù),也可以使用循環(huán)遍歷和二進制遍歷兩種方法結(jié)合使用。可以看到,通過上面兩種方法,一共遍歷了16次,最終只需要遍歷4次。因此上面兩種方法的使用技巧是: 第一種方法使用循環(huán)遍歷的方法對數(shù)據(jù)進行遍歷;第二種方法是先用二進制遍歷一次,再用循環(huán)遍歷一次。 通過上面代碼可以看到,雖然十進制數(shù)轉(zhuǎn)換成二進制數(shù)據(jù)后需要遍歷64次,但是我們可以通過下面兩種方法結(jié)合起來使用。 首先是使用循環(huán)遍歷的方法對數(shù)據(jù)進行遍歷。因為數(shù)據(jù)是16位的二進制數(shù),所以每遍歷一次需要遍歷第2位,也就是16-2=12。 但是如果采用二進制算法對數(shù)據(jù)進行遍歷的話,就可以只遍歷第1-32位了。 由于上面兩種方法都可以使用循環(huán)的方式實現(xiàn)對數(shù)據(jù)的遍歷,因此我們也可以用循環(huán)的方式對16個位數(shù)進行遍歷。
-
四、使用十進制數(shù)組
對于十進制數(shù),可以使用十個十進制數(shù)來組成一個數(shù)組。這樣的數(shù)組可能是以1開頭,也可能是以0開頭,但都是以1開始,并且不會重復。從上面的代碼中可以看到,這個數(shù)組由4個數(shù)組成,其中每個數(shù)都包含了兩個十進制數(shù)字:0和1。
常用的python十進制轉(zhuǎn)二進制代碼:文章來源:http://www.zghlxwxcb.cn/news/detail-417967.html
1.?使用內(nèi)置函數(shù)bin()將十進制數(shù)轉(zhuǎn)換為二進制數(shù):
```python
decimal_num?=?10
binary_num?=?bin(decimal_num)
print(binary_num)
```
輸出結(jié)果為:`0b1010`
2.?使用位運算符將十進制數(shù)轉(zhuǎn)換為二進制數(shù):
```python
decimal_num?=?10
binary_num?=?""
while?decimal_num?>?0:
binary_num?=?str(decimal_num?%?2)?+?binary_num
decimal_num?//=?2
print(binary_num)
```
輸出結(jié)果為:`1010`
3.?使用format()函數(shù)將十進制數(shù)轉(zhuǎn)換為二進制數(shù):
```python
decimal_num?=?10
binary_num?=?"{0:b}".format(decimal_num)
print(binary_num)
```
輸出結(jié)果為:`1010`文章來源地址http://www.zghlxwxcb.cn/news/detail-417967.html
到了這里,關(guān)于python十進制轉(zhuǎn)二進制方法詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!