1、采用 %2的方式
創(chuàng)新互聯(lián)憑借專(zhuān)業(yè)的設(shè)計(jì)團(tuán)隊(duì)扎實(shí)的技術(shù)支持、優(yōu)質(zhì)高效的服務(wù)意識(shí)和豐厚的資源優(yōu)勢(shì),提供專(zhuān)業(yè)的網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、成都網(wǎng)站設(shè)計(jì)、網(wǎng)站優(yōu)化、軟件開(kāi)發(fā)、網(wǎng)站改版等服務(wù),在成都10多年的網(wǎng)站建設(shè)設(shè)計(jì)經(jīng)驗(yàn),為成都近千家中小型企業(yè)策劃設(shè)計(jì)了網(wǎng)站。
2、bin 函數(shù)
3、 format 方法來(lái)獲取二進(jìn)制
#!/usr/bin/python# -*- coding:utf-8 -*-# @Time : 2018/6/19 10:20# @Author : # @File : Dec_To_Bin.py"""十進(jìn)制轉(zhuǎn)二進(jìn)制""" # 定義一個(gè)十進(jìn)制轉(zhuǎn)二進(jìn)制的函數(shù)def dec2bin(string_num): num = int(string_num) # 將傳入的字符串?dāng)?shù)字轉(zhuǎn)換成整型 mid = [] # 定義一個(gè)空列表 while True: # 循環(huán),條件為真時(shí)執(zhí)行 if num == 0: # 當(dāng)輸入值是0時(shí),直接跳出循環(huán) break num, rem = divmod(num, 2) # 調(diào)用函數(shù)divmod,得到商num,和余數(shù)rem mid.append(rem) # 將余數(shù)存入列表 return ''.join([str(x) for x in mid[::-1]]) # 返回結(jié)果,列表取反后拼接成字符串 if __name__ == '__main__': anum = raw_input(u'請(qǐng)輸入要轉(zhuǎn)換的數(shù)字:') print u'該數(shù)字轉(zhuǎn)換為二進(jìn)制后是:{}'.format(dec2bin(anum))
從二進(jìn)制轉(zhuǎn)換為十進(jìn)制有幾種方式
第一種是在二進(jìn)制數(shù)前加上0b,顯示時(shí)會(huì)自動(dòng)轉(zhuǎn)換為十進(jìn)制,注意這并不是字符串
x = 0b1010print(x)
如果是字符串可以利用eval求值
x = eval('0b1010')
第二種是利用int函數(shù),字符串可以以0b為前綴,也可以不使用
int('1010',base=2)int('0b1010',2)
函數(shù)會(huì)將輸入base進(jìn)制的字符串轉(zhuǎn)換為十進(jìn)制
題主你好,
先說(shuō)下原理: 利用python內(nèi)置的函數(shù)bin()即可.
代碼截圖:
測(cè)試截圖:
=====
希望可以幫到題主, 歡迎追問(wèn).
在Python中,可以使用int()函數(shù)將二進(jìn)制數(shù)10101轉(zhuǎn)換為十進(jìn)制數(shù)。int()函數(shù)的第一個(gè)參數(shù)為要轉(zhuǎn)換的數(shù),第二個(gè)參數(shù)為進(jìn)制。例如,要將二進(jìn)制數(shù)10101轉(zhuǎn)換為十進(jìn)制數(shù),可以使用以下表達(dá)式:
int('10101', 2)
該表達(dá)式會(huì)將二進(jìn)制數(shù)10101轉(zhuǎn)換為十進(jìn)制數(shù)21。