Python3将一个INT转换为HEX

时间:2016-03-09 02:47:50

标签: python python-3.x pack

def convert_output (output):
    return (struct.pack('i', output))

while True:
    pygame.event.pump()
    joystick = pygame.joystick.Joystick(0)
    joystick.init()

    X_AX = int(joystick.get_axis(0) * 100)

    DATA = convert_output(X_AX)

    print("message:", (DATA), "----", hex(X_AX), "----", X_AX)

如何在DATA中获得与hex(X_AX)相同的输出? 我需要X_AX作为UDP通信的一个字节HEX。

当前输出如下:

message: b'\x00\x00\x00\x00' ---- 0x0 ---- 0
message: b'\x18\x00\x00\x00' ---- 0x18 ---- 24

X_AX范围是-100到100

1 个答案:

答案 0 :(得分:1)

如果您想要单字节表示,请使用格式代码struct.pack而不是b调用i,它将输出单个有符号字节(可以表示-128中的所有值)至127,包括处理您需要的-100到100范围)。在repr编辑时,示例案例中所述字节的b'\x18'print,但当您write以二进制模式将其 HTML: <div class="nav"> <ul> <li ><a class="active" href="index.php"><a href="#">Home</a></li> <li ><a href="">About us</a> <ul> <li><a href="site_profile.php">Company Profile</a></li> <li><a href="#">Management</a></li> <li><a href="#">Testimonials</a></li> <li><a href="#">Services</a></li> </ul> </li> <li ><a href="#">Contacts</a></li> <li ><a href="">Careers</a></li> <li ><a href="#">Blog</a> <ul> <li><a href="#">Tips</a></li> <li><a href="#">Success Story</a></li> </ul> </li> <li class="contact"><a href="#">Login</a></li> </ul> <div class="handle"> Menu </div> </div> CSS: .nav ul { list-style: none; background-color: #444; text-align: center; padding: 0; margin: 0; } .nav li { font-family: 'Oswald', sans-serif; font-size: 1.2em; line-height: 40px; text-align: left; } .nav a { text-decoration: none; color: #fff; display: block; padding-left: 15px; border-bottom: 1px solid #888; transition: .3s background-color; } .nav a:hover { background-color: #005f5f; } .nav a.active { background-color: #aaa; color: #444; cursor: default; } /* Sub Menus */ .nav li li { font-size: .8em; } /******************************************* MEDIA ********************************************/ .handle.hidden { width: 100%; background: white; text-align: left; box-sizing: border-box; padding: 15px 10px; cursor: pointer; color: white; display: none; } @media screen and (min-width: 650px) { .nav li { width: 130px; border-bottom: none; height: 50px; line-height: 50px; font-size: 1.4em; display: inline-block; margin-right: -4px; } .showing { max-height: 20em; } .nav a { border-bottom: none; } .nav > ul > li { text-align: center; } .nav > ul > li > a { padding-left: 0; } /* Sub Menus */ .nav li ul { position: absolute; display: none; width: inherit; } .nav li:hover ul { display: block; } .nav li ul li { display: block; } .handle{ display: block; background-color: rgba(0,0,0,0.8); } } SCRIPT: <script type="text/javascript"> $('.handle').on('click', function(){ $('nav ul').toggleClass('showing'); }); </script> 转换为套接字或文件时,原始字节本身就是写的。

请参阅struct module's format code documentation for other options by size