bin( )函數可以把整數轉換為二進制
創(chuàng)新互聯(lián)建站是一家從事企業(yè)網站建設、成都網站設計、成都網站建設、外貿網站建設、行業(yè)門戶網站建設、網頁設計制作的專業(yè)網站設計公司,擁有經驗豐富的網站建設工程師和網頁設計人員,具備各種規(guī)模與類型網站建設的實力,在網站建設領域樹立了自己獨特的設計風格。自公司成立以來曾獨立設計制作的站點千余家。
num=23
print(bin(num))
oct可以把整數轉換為八進制。
num=77
print(otc(num))
hex可以把十進制整數轉換為十六進制
num=77
print(hex(num))
int("001001", 2) 可以把二進制轉換為十進制。
001001是二進制,記得要加上雙引號。
數字2表示"001001"為二進制。如果輸入的不是二進制數字就會報錯。
str=”001001”
print( int(str, 2 ))
在Python中,可以使用int()函數將二進制數10101轉換為十進制數。int()函數的第一個參數為要轉換的數,第二個參數為進制。例如,要將二進制數10101轉換為十進制數,可以使用以下表達式:
int('10101', 2)
該表達式會將二進制數10101轉換為十進制數21。
實際項目中經常遇到讀取二進制問題,Python下讀取二進制文件一般用Python的文件打開讀寫相關函數和struct.
1。獲取文件名filename,可用對話框,也可以直接手寫
2。打開文件,這里中是打開,像看書一樣,只是打開書,還沒有看里面的內容,可以看,也可以不看
binFile=open(filename,'rb')
3。那就看看吧,binFile現在就是書的名字了。這里我們讀入4個字,如果read()將讀入整個文件
context=binFile.read(4)
4。讀入之后問題來了,context包含四個字(4Bytes),但這四個字是加密的(二進制)。這時要找翻譯struct.unpack
realContext=struct.unpack(format,context)
5。format的就是加密規(guī)則了,由1,2,4,8個字節(jié)組成其他類型,或者其他類型的數組。
a,b,c,d=struct.unpack('4c',context)
讀入四個字符
對應格式參考
6。打開文件后用完一定要關閉,和看書一個樣,看完后要合上,不合上后果自己去想
binFile.close()
7。查找內容,文件內容可以一個一個字的按順序讀出,但如果已經知道內容在什么位置,可以用查找方式讀出。
binFile.seek(100)
context=binFile.read(4)
讀出100位置后面的4個字,(101,102,103,104)
8。Python還提供也一些高級讀寫功能,如整行讀取等
#!/usr/bin/python# -*- coding:utf-8 -*-# @Time : 2018/6/19 10:20# @Author : # @File : Dec_To_Bin.py"""十進制轉二進制""" # 定義一個十進制轉二進制的函數def dec2bin(string_num): num = int(string_num) # 將傳入的字符串數字轉換成整型 mid = [] # 定義一個空列表 while True: # 循環(huán),條件為真時執(zhí)行 if num == 0: # 當輸入值是0時,直接跳出循環(huán) break num, rem = divmod(num, 2) # 調用函數divmod,得到商num,和余數rem mid.append(rem) # 將余數存入列表 return ''.join([str(x) for x in mid[::-1]]) # 返回結果,列表取反后拼接成字符串 if __name__ == '__main__': anum = raw_input(u'請輸入要轉換的數字:') print u'該數字轉換為二進制后是:{}'.format(dec2bin(anum))
題主你好,
先說下原理: 利用python內置的函數bin()即可.
代碼截圖:
測試截圖:
=====
希望可以幫到題主, 歡迎追問.