Noob Python sorusu için özür dilerim ama bu konuda çok fazla uzadım.Python soketinin çıktısı geri çekiliyor
Sunucudan bazı verileri almak için python yuvaları kullanıyorum. Bunu yapmak:
data = self.socket.recv(4)
print "data is ", data
print "repr(data) is ", repr(data)
Konsolda çıktı şudur:
verilerdir
repr (veri) olduğu '\ x00 \ x00 \ x00 \ x01'
Temel olarak 4 baytlık bir sayı içeren bu dizgiyi bir c veya uzun bir C'ye dönüştürmek istiyorum. Bu veri nesnesini kolayca yönetebileceğim sayısal bir değere nasıl dönüştürebilirim?
teşekkür:
kodu aşağıdaki gibi olacaktır. Aslında "myint = unpack ("! I ", data) [0]" yapmak zorunda kaldım çünkü büyük endian ve bir tuple çıkıyor. Düzenlemek isterseniz cevabınızı doğru olarak işaretleyeceğim. Yine, yardım için teşekkürler. – chrism1
Tuple bölümünü kaçırdım. :) İsteğinize göre cevabı düzenledim. – grieve
Sadece pedantic olmak için son satırın da olması gerektiğine inanıyorum: myint = struct.unpack ("! I", data) [0] –