Dar*_*yys 2 python string int hex ascii
我不知道为什么Hex函数返回一个像'0x41'而不是0x41的字符串
我需要将ASCII值转换为十六进制.但我想要0x INT格式,而不是'0x'字符串.
ascii = 360
hexstring = hex(ascii)
hexstring += 0x41 # i cant do this because hexstring is a string not a int hex
Run Code Online (Sandbox Code Playgroud)
我怎么能得到一个int hex?谢谢
没有int hex对象.只有一种替代语法来创建整数:
>>> 0x41
65
Run Code Online (Sandbox Code Playgroud)
您也可以使用它0o1010来获得相同的值.或者用0b1000001它来指定二进制; 它们与Python 完全相同的数值 ; 它们只是在代码中指定整数值的不同形式.
只需保存ascii为整数,并将十六进制表示法值与其相加:
>>> ascii = 360
>>> ascii += 0x41
>>> ascii
425
Run Code Online (Sandbox Code Playgroud)
hex()生成一个可以由Python程序以相同方式解释的字符串,通常在调试代码或快速演示输出时使用(但format(number, 'x')如果要生成没有0x前缀的最终用户输出,则应该使用).不需要使用整数.