नोब पायथन प्रश्न के लिए माफ़ी, लेकिन मैं इस पर बहुत लंबे समय तक फंस गया हूं।पायथन सॉकेट आरईवी
मैं सर्वर से कुछ डेटा प्राप्त करने के लिए पाइथन सॉकेट का उपयोग कर रहा हूं। मैं यह कर:
data = self.socket.recv(4)
print "data is ", data
print "repr(data) is ", repr(data)
कंसोल पर उत्पादन यह है:
डेटा है
रेपर (डेटा) है '\ x00 \ x00 \ x00 \ X01'
मैं इस स्ट्रिंग को अनिवार्य रूप से एक 4 बाइट संख्या को int में बदलना चाहता हूं - या वास्तव में सी में लंबा क्या होगा। मैं इस डेटा ऑब्जेक्ट को एक संख्यात्मक मान में कैसे बदल सकता हूं जिसे मैं आसानी से प्रबंधित कर सकता हूं?
धन्यवाद:
कोड कुछ ऐसा दिखाई देगा। मुझे वास्तव में "myint = unpack ("! I ", डेटा) [0]" करना था क्योंकि "यह बड़ा एंडियन है और यह एक ट्यूपल के रूप में बाहर आता है। अगर आप संपादित करना चाहते हैं तो मैं आपके उत्तर को सही तरीके से चिह्नित करूंगा। सहायता के लिए पुनः धन्यवाद। – chrism1
ट्यूपल भाग मिस गया। :) आपके अनुरोध के जवाब का संपादन किया। – grieve
सिर्फ पैडेंटिक होने के लिए, मेरा मानना है कि आखिरी पंक्ति भी होनी चाहिए: myint = struct.unpack ("! I", डेटा) [0] –