Python 十進数から二進数、八進数、十六進数への変換
以下のコードは、十進数を二進数、八進数、十六進数に変換するためのものです。
例(Python 3.0+)
# -*- coding: UTF-8 -*-
# Filename : test.py
# author by : www.example.com
# ユーザーが入力した十進数を取得
dec = int(input("数字を入力:"))
print("十進数は:", dec)
print("二進数に変換:", bin(dec))
print("八進数に変換:", oct(dec))
print("十六進数に変換:", hex(dec))
上記のコードを実行した出力結果:
python3 test.py 输入数字:5 十进制数为:5 转换为二进制为: 0b101 转换为八进制为: 0o5 转换为十六进制为: 0x5
以下の例は、異なる進数間で変換する方法を示しています。必要に応じて、入力する進数値と出力する進数形式を変更できます。
二進数変換の例
例
binary_number = '101010'
decimal_number = int(binary_number, 2) # 二進数を十進数に変換
octal_number = oct(decimal_number) # 十進数を八進数に変換
hexadecimal_number = hex(decimal_number) # 十進数を十六進数に変換
print('二進数:', binary_number)
print('十進数に変換:', decimal_number)
print('八進数に変換:', octal_number)
print('十六進数に変換:', hexadecimal_number)
decimal_number = int(binary_number, 2) # 二進数を十進数に変換
octal_number = oct(decimal_number) # 十進数を八進数に変換
hexadecimal_number = hex(decimal_number) # 十進数を十六進数に変換
print('二進数:', binary_number)
print('十進数に変換:', decimal_number)
print('八進数に変換:', octal_number)
print('十六進数に変換:', hexadecimal_number)
出力結果:
二进制数: 101010 转换为十进制: 42 转换为八进制: 0o52 转换为十六进制: 0x2a
八進数変換の例
例
octal_number = '52'
decimal_number = int(octal_number, 8) # 八進数を十進数に変換
binary_number = bin(decimal_number) # 十進数を二進数に変換
hexadecimal_number = hex(decimal_number) # 十進数を十六進数に変換
print('八進数:', octal_number)
print('十進数に変換:', decimal_number)
print('二進数に変換:', binary_number)
print('十六進数に変換:', hexadecimal_number)
decimal_number = int(octal_number, 8) # 八進数を十進数に変換
binary_number = bin(decimal_number) # 十進数を二進数に変換
hexadecimal_number = hex(decimal_number) # 十進数を十六進数に変換
print('八進数:', octal_number)
print('十進数に変換:', decimal_number)
print('二進数に変換:', binary_number)
print('十六進数に変換:', hexadecimal_number)
出力結果:
八进制数: 52 转换为十进制: 42 转换为二进制: 0b101010 转换为十六进制: 0x2a
十六進数変換の例
例
hexadecimal_number = '2a'
decimal_number = int(hexadecimal_number, 16) # 十六進数を十進数に変換
binary_number = bin(decimal_number) # 十進数を二進数に変換
octal_number = oct(decimal_number) # 十進数を八進数に変換
print('十六進数:', hexadecimal_number)
print('十進数に変換:', decimal_number)
print('二進数に変換:', binary_number)
print('八進数に変換:', octal_number)
decimal_number = int(hexadecimal_number, 16) # 十六進数を十進数に変換
binary_number = bin(decimal_number) # 十進数を二進数に変換
octal_number = oct(decimal_number) # 十進数を八進数に変換
print('十六進数:', hexadecimal_number)
print('十進数に変換:', decimal_number)
print('二進数に変換:', binary_number)
print('八進数に変換:', octal_number)
出力結果:
十六进制数: 2a 转换为十进制: 42 转换为二进制: 0b101010 转换为八进制: 0o52その他の拡張
Python3 例