簡體   English   中英

Python將三個整數轉換為十六進制字符串

[英]Python three integers to hex string

我正在使用python控制鼠標,因此我需要將3個整數轉換為十六進制值,例如b'\\x00\\x64\\x64'

我嘗試過的

return b'\x00' + hex(x) + hex(y)

但是我的IDE不喜歡這種語法,我丟失了什么嗎?

最簡單的方法可能是使用struct模塊:

import struct

def f(x, y):
    return struct.pack('bbb', 0, x, y)

沒有struct另一種方法:

def byte_to_bytestr(x):
    return x.to_bytes(1, byteorder='big')

def f(x, y):
    return b''.join(map(byte_to_bytestr, [0, x, y]))
x = 100
y = 100

print(bytes("\x00\{}\{}".format(hex(x), hex(y)), 'utf-8'))

這應該夠了吧

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM