雖然python中已經有了int(string_num,base)的數字轉十進位制的方法,不過限制於36進製,下面寫了乙個**,能夠突破這個限制進行轉換具體數學原理舉例來說:
456=6*10^0
+5*10^1
+4*10^2
同理二進位制數字
1010(base=2)=0*2^0
+1*2^1
+0*2^2
+1*2^3=10(base=10)
具體的做法是先把輸入的數字序列化,然後通過序列切段迴圈操作,相乘後構建新的序列,最後求和新序列。
num=input('please input a number:')
base=input('please input the base of
thenumber:')
n=x=np.array(list(num))
for i in range(len(x)):
z=int(x[-1*(i+1)])*int((base**i))
print 'the
number
to dec is:',sum(n)
Python 各種進製轉換
coding gbk var input 請輸入十六進製制數 b bin int var,16 print b 2 詳細請參考python自帶int函式 bin函式用法 參考 class int x,base 10 bin x 十六進製制 到 十進位制 使用 int 函式 第乙個引數是字串 0xff...
bitset 10進製轉2進製 2進製各種操作
bitset儲存二進位制數字。bitset就像乙個bool型別的陣列一樣,但是有空間優化。bitset中的每個元素都能單獨被訪問,例如對於乙個叫做a的bitset,表示式a 3 訪問了它的第4個元素,就像陣列一樣。但是輸出單獨訪問結果不能用printf,和bitset有關的輸出都用cout 另外bi...
python進製表示 python之進製轉換
python中二進位制是以0b開頭的 例如 0b11 則表示十進位制的3 8進製是以0開頭的 例如 011則表示十進位制的9 16進製制是以0x開頭的 例如 0x11則表示十進位制的17 全域性定義 base str x for x in range 10 chr x for x in range ...