Python中不同進制互相轉(zhuǎn)換(二進制、八進制、十進制和十六進制)
在我的印象里面進制互相轉(zhuǎn)換確實是很常見的問題,所以在Python中,自然也少不了把下面這些代碼收為util。
這是從網(wǎng)上搜索的一篇也的還可以的Python進制轉(zhuǎn)換,經(jīng)過驗證可以使用。下面貼出它的實現(xiàn)代碼:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 2/10/16 base trans. wrote by srcdog on 20th, April, 2009
# ld elements in base 2, 10, 16.
import os,sys
# global definition
# base = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F]
base = [str(x) for x in range(10)] + [ chr(x) for x in range(ord('A'),ord('A')+6)]
# bin2dec
# 二進制 to 十進制: int(str,n=10)
def bin2dec(string_num):
return str(int(string_num, 2))
# hex2dec
# 十六進制 to 十進制
def hex2dec(string_num):
return str(int(string_num.upper(), 16))
# dec2bin
# 十進制 to 二進制: bin()
def dec2bin(string_num):
num = int(string_num)
mid = []
while True:
if num == 0: break
num,rem = divmod(num, 2)
mid.append(base[rem])
return ''.join([str(x) for x in mid[::-1]])
# dec2hex
# 十進制 to 八進制: oct()
# 十進制 to 十六進制: hex()
def dec2hex(string_num):
num = int(string_num)
mid = []
while True:
if num == 0: break
num,rem = divmod(num, 16)
mid.append(base[rem])
return ''.join([str(x) for x in mid[::-1]])
# hex2tobin
# 十六進制 to 二進制: bin(int(str,16))
def hex2bin(string_num):
return dec2bin(hex2dec(string_num.upper()))
# bin2hex
# 二進制 to 十六進制: hex(int(str,2))
def bin2hex(string_num):
return dec2hex(bin2dec(string_num))
- Python 內(nèi)置函數(shù)進制轉(zhuǎn)換的用法(十進制轉(zhuǎn)二進制、八進制、十六進制)
- Python二進制串轉(zhuǎn)換為通用字符串的方法
- Python 字符串與二進制串的相互轉(zhuǎn)換示例
- Python 16進制與中文相互轉(zhuǎn)換的實現(xiàn)方法
- python實現(xiàn)各進制轉(zhuǎn)換的總結(jié)大全
- python中常見進制之間的轉(zhuǎn)換方式
- python十進制和二進制的轉(zhuǎn)換方法(含浮點數(shù))
- 一篇教程教你學(xué)會Python進制轉(zhuǎn)換(十進制轉(zhuǎn)二進制、八進制、十六進制)
- Python中不同進制間的轉(zhuǎn)換實現(xiàn)
相關(guān)文章
使用python將微信image下.dat文件解密為.png的方法
這篇文章主要介紹了使用python將微信image下.dat文件解密為.png的方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11
Python cookbook(字符串與文本)在字符串的開頭或結(jié)尾處進行文本匹配操作
這篇文章主要介紹了Python cookbook(字符串與文本)在字符串的開頭或結(jié)尾處進行文本匹配操作,涉及Python使用str.startswith()和str.endswith()方法針對字符串開始或結(jié)尾處特定文本匹配操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2018-04-04
Java ExcutorService優(yōu)雅關(guān)閉方式解析
這篇文章主要介紹了Java ExcutorService優(yōu)雅關(guān)閉方式解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-05-05
Python數(shù)據(jù)分析之?Matplotlib?餅圖繪制
這篇文章主要介紹了Python數(shù)據(jù)分析之?Matplotlib?餅圖繪制,文章基于python的相關(guān)資料展開詳細的餅圖繪制,具有一定的參考價值,需要的小伙伴可以參考一下2022-05-05
python畫圖時給圖中的點加標(biāo)簽和plt.text的使用
這篇文章主要介紹了python畫圖時給圖中的點加標(biāo)簽和plt.text的使用,利用matplotlib模塊畫各城市2019-nCoV疫情確診人數(shù)和節(jié)前流入人口數(shù)的圖的時候遇到了要給圖中的點加上標(biāo)簽示意,需要的朋友可以參考一下2022-03-03
利用Python自動監(jiān)控網(wǎng)站并發(fā)送郵件告警的方法
這篇文章介紹的是通過定時執(zhí)行python腳本,可以實現(xiàn)定期批量訪問網(wǎng)站,如果發(fā)現(xiàn)網(wǎng)站打不開,第一時間發(fā)郵件到管理員郵箱進行預(yù)警。有需要的可以參考借鑒。2016-08-08
Python 日期區(qū)間處理 (本周本月上周上月...)
這篇文章主要介紹了Python 日期區(qū)間處理 (本周本月上周上月...),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08

