J'ajoute quelques octets hexadécimaux dans un packet = []
et je veux retourner ces octets hexadécimaux sous la forme de 0x__
en tant que données hexadécimales.Interpréter la chaîne 0x comme hexadécimal en Python
packet.append("2a")
packet.append("19")
packet.append("00")
packet.append("00")
packHex = []
for i in packet:
packHex.append("0x"+i) #this is wrong
return packHex
Comment puis-je aller sur la conversion ('2a', '19', '00', '00')
en packet
pour obtenir (0x2a, 0x19, 0x0, 0x0)
à packHex
? J'ai besoin de vraies données hexadécimales, pas de chaînes qui ressemblent à des données hexadécimales.
Je l'assemblage d'un paquet à envoyer sur pcap
, pcap_sendpacket(fp,packet,len(data))
où packet
doit être une liste hexadécimal ou tuple pour moi, peut-être il peut être fait en décimal, ont pas essayé, je préfère hex. Merci pour votre réponse.
packetPcap[:len(data)] = packHex
Résolu:
for i in packet: packHex.append(int(i,16))
Si la sortie en hexadécimal nécessaire, cette commande peut être utilisée: print ",".join(map(hex, packHex))
quelle que soit « données réelles hexagonaux » est ... – hop
Désolé, tryna » le garder « vrai » ... - hop 1 min il y a – soulseekah