文字列のIPv4アドレスを使用して16進整数に変換するプログラムを作成しようとしています。私のプログラムは動作しますが、16進数の値は文字列の形になっていますので、私のプログラムは値の誤りを返します(例: "int()の基数10の無効なリテラル"または "expected type int()or float 」)。PythonのIPv4アドレス16進数
example input: 115.255.8.97
example output: 73FF0861
#IPv4 to Hex
splitip = sys.argv[2].split('.')
hexint = hex(int(splitip[0]))[2:].zfill(2) + hex(int(splitip[1]))[2:].zfill(2) + hex(int(splitip[2]))[2:].zfill(2) + hex(int(splitip[3]))[2:].zfill(2)
hexint = hexint.replace('0x','')
助けていただければ幸いです!
注:私の問題は、hexint変数が文字列であることです。私のプログラムは値adを整数として持つ必要があります。
(https://stackoverflow.com/questions/209513/convert-hex-string-to-int-in-python)[Pythonでintに16進文字列を変換] – tinamou