最初にいいます。
1秒はもりました。
でも、4秒くらいでできます。
使い方
使い方は簡単!
radix_conversion(変換したい数値,その数値は何進数か,何進数に変換したいか)
を入力するだけ!
例えば、
.py
radix_conversion(0b11111111,2,16)
を実行すると
.py
0xff
と出力されます。
2進数である0b11111111
を16進数0xff
に変換できました。
詳細
めっちゃ簡単です笑
参考資料:Pythonで2進数、8進数、16進数の数値・文字列を相互に変換
radix_conversion.py
def radix_conversion(value,a,b):
#10→~
if a == 10:
if b == 2:
num = print(bin(value))
if b == 8:
num = print(oct(value))
if b == 16:
num = print(hex(value))
#2→~
if a == 2:
a_string = str(value)
if b == 10:
num = print(int(a_string,0))
if b == 8:
num = print(format(int(a_string,0),'#o'))
if b == 16:
num = print(format(int(a_string,0),'#x'))
#8→~
if a == 8:
a_string = str(value)
if b == 10:
num = print(int(a_string,0))
if b == 2:
num = print(format(int(a_string,0),'#b'))
if b == 16:
num = print(format(int(a_string,0),'#x'))
#16→~
if a == 16:
a_string = str(value)
if b == 10:
num = print(int(a_string,0))
if b == 2:
num = print(format(int(a_string,0),'#b'))
if b == 8:
num = print(format(int(a_string,0),'#o'))
return num