python內(nèi)置進(jìn)制轉(zhuǎn)換函數(shù)的操作
看代碼吧~
dec = input('10進(jìn)制數(shù)為:') print("轉(zhuǎn)換為二進(jìn)制為:", bin(dec)) print("轉(zhuǎn)換為八進(jìn)制為:", oct(dec)) print("轉(zhuǎn)換為十六進(jìn)制為:", hex(dec)) string1 = '101010' print('二進(jìn)制字符串轉(zhuǎn)換成十進(jìn)制數(shù)為:',int(string1,2)) string1 = '367' print('八進(jìn)制字符串轉(zhuǎn)換成十進(jìn)制數(shù)為:',int(string1,8)) string3 = 'FFF' print('十六進(jìn)制字符串轉(zhuǎn)換成十進(jìn)制數(shù)為:',int(string1,16))
leetcode第476題:
Input: 5
Output: 2
Explanation: The binary representation of 5 is 101 (no leading zero bits), and its complement is 010. So you need to output 2.
class Solution: def findComplement(self, num): """ :type num: int :rtype: int """ string = bin(num) string1 ='' for i in range(2,len(string)): if string[i] == '1': string1 += '0' else: string1 += '1' return int(string1,2) #二進(jìn)制字符串轉(zhuǎn)換成10進(jìn)制整數(shù)
python各進(jìn)制之間轉(zhuǎn)換函數(shù)
這兩天在研究修正農(nóng)歷庫的事情,搞的很累,想用代碼自動(dòng)完成,于是又把python撿起來了,python還是很好撿的,雖然丟了挺長時(shí)間。
其中就用了python各進(jìn)制轉(zhuǎn)換的問題,寫下來以,備忘。之所以要寫下來,而不是轉(zhuǎn)發(fā),是因?yàn)楹芏嗳藢懙谋容^啰嗦,我只把重點(diǎn)寫出來就可以了,其他全部去掉。
一共用到四個(gè)函數(shù):bin()、oct()、int()、hex()
int():轉(zhuǎn)換為10進(jìn)制;語法:Int(字符串,字符串進(jìn)制) 。例: int("f",16) 輸出為15;int('11',2)輸出為3
即以下三個(gè)函數(shù)都是把10進(jìn)制數(shù)轉(zhuǎn)換成目標(biāo)進(jìn)制。
bin():轉(zhuǎn)換為2進(jìn)制;例:bin( int("f",16) )輸出:'0b1111' .bin(15)同樣輸出'0b1111'。
oct():轉(zhuǎn)換為8進(jìn)制;
hex():轉(zhuǎn)換為16進(jìn)制。
bin()、oct()、hex()的返回值均為字符串,分別帶有0b、0o、0x前綴,后續(xù)處理時(shí)需注意。
以下的x必須為“字符串”,需用引號。
2->8:oct(int(x, 2))
8->2:bin(int(x, 8))
2->16:hex(int(x, 2))
16->2:bin(int(x, 16))
其他用法一樣,就不舉例了。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python日期和時(shí)間戳的轉(zhuǎn)換的實(shí)現(xiàn)方式
Python中日期和時(shí)間的處理涉及到time和datetime模塊,time模塊可實(shí)現(xiàn)時(shí)間戳與格式化時(shí)間字符串的轉(zhuǎn)換,而datetime模塊則提供更加直接易用的接口,本文詳細(xì)給大家介紹了Python日期和時(shí)間戳的轉(zhuǎn)換的實(shí)現(xiàn)方式,需要的朋友可以參考下2024-10-10Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)保存最后N個(gè)元素的方法
這篇文章主要介紹了Python數(shù)據(jù)結(jié)構(gòu)與算法 保存最后N個(gè)元素的方法,涉及Python基于迭代器與生成器實(shí)現(xiàn)歷史記錄功能的相關(guān)操作技巧,需要的朋友可以參考下2018-02-02Python編程使用有限狀態(tài)機(jī)識別地址有效性
這篇文章主要介紹了Python編程中如何使用有限狀態(tài)機(jī)識別地址有效性,如何識別一個(gè)地址是否有效,確切的講,如何編程識別一個(gè)中國地址是否有效2021-09-09社區(qū)版pycharm創(chuàng)建django項(xiàng)目的方法(pycharm的newproject左側(cè)沒有項(xiàng)目選項(xiàng))
pycharm的newproject左側(cè)沒有出現(xiàn)項(xiàng)目選項(xiàng)的情況下,創(chuàng)建Django項(xiàng)目的解決方法./社區(qū)版pycharm創(chuàng)建django項(xiàng)目的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-09-09Python實(shí)現(xiàn)PS圖像調(diào)整之對比度調(diào)整功能示例
這篇文章主要介紹了Python實(shí)現(xiàn)PS圖像調(diào)整之對比度調(diào)整功能,結(jié)合實(shí)例形式分析了Python實(shí)現(xiàn)PS圖像對比度調(diào)整的原理、實(shí)現(xiàn)方法及相關(guān)操作技巧,需要的朋友可以參考下2018-01-01利用Anaconda完美解決Python 2與python 3的共存問題
Anaconda 是 Python 的一個(gè)發(fā)行版,如果把 Python 比作 Linux,那么 Anancoda 就是 CentOS 或者 Ubuntu,下面這篇文章主要給大家介紹了利用Anaconda完美解決Python 2與python 3共存問題的相關(guān)資料,文中介紹的非常詳細(xì),需要的朋友可以參考借鑒。2017-05-05