こちらも同じようにhex(26)を実行すれば’0x1a’を出力されますが、
これをPythonのコードで書きます。
import sys
args = sys.argv
def dec2hex(target):
division = target
hex = []
while division != 0:
remainder_of = division % 16
division = division // 16
if remainder_of >= 10:
hex.append(chr(55 + remainder_of))
else:
hex.append(remainder_of)
hex.reverse()
return hex
print(dec2hex(int(args[1])))
taki@DESKTOP-4VF3GEO:~/python$ python dec2hex.py 26
[1, 'A']
こちらもサンプルでは[A-F]を愚直にif文で書いていますが、
AはASCIIコードで65(0x41)なので、55に余りを足してchrで変換することで[A-F]に変換しています。