में उपयोग के लिए प्रोटोकॉल बफर से ऑब्जेक्ट की तरह एक पायथन शब्दकोश बनाना, वर्तमान में मैं प्रोटोकॉल बफर प्रदान करने वाले सर्वर पर इंटरफ़ेस करता हूं। मैं संभावित रूप से बहुत बड़ी संख्या में संदेश प्राप्त कर सकता हूं। वर्तमान में मेरे प्रक्रिया प्रोटोकॉल बफ़र्स को पढ़ने के लिए और उन्हें एक पांडा DataFrame में कन्वर्ट (नहीं सामान्य रूप में एक आवश्यक कदम है, लेकिन पांडा डेटासेट विश्लेषण करने के लिए अच्छा उपकरण प्रदान करता है) है:पंडों
- पढ़ें प्रोटोकॉल बफ़र, यह एक गूगल Protobuf हो जाएगा
- Convert प्रोटोकॉल बफ़र्स आपत्ति protobuf_to_dict
- उपयोग
pandas.DataFrame.from_records
का उपयोग कर एक DataFrame
यह अच्छा काम करता है, लेकिन, संदेश मैं Protobuf से पढ़ने की बड़ी संख्या को देखते हुए प्राप्त करने के लिए डिक्शनरी में, यह ग के लिए काफी अक्षम है शब्दकोश के लिए आगे और फिर पांडा के लिए। मेरा सवाल यह है: क्या एक ऐसा वर्ग बनाना संभव है जो एक पाइथन प्रोटोबफ ऑब्जेक्ट को एक शब्दकोश की तरह दिख सके? यही है, चरण 2 हटाएं। कोई संदर्भ या छद्म कोड उपयोगी होगा।
लेकिन' dictionary' को प्रोटोकॉल बफ़र्स कन्वर्ट एक अजगर Protobuf वस्तु एक शब्दकोश की तरह लग रहे बनाता है। – furas
मैंने कोड को देखा, यह निश्चित रूप से * नहीं * ऐसा लगता है कि यह प्रोटोबफ ऑब्जेक्ट को लपेट रहा है, बल्कि एक वास्तविक नया शब्दकोश बनाता है। मेरा मानना है कि @ जस्टिन कुछ ऐसी चीज की तलाश में है जो डेटा कॉपी करने के बिना ही लपेटता है। – user3820547
हां, मैं Google protobuf ऑब्जेक्ट को डेटा को कॉपी करने के बजाए किसी शब्दकोष की तरह दिखाना चाहता हूं, पहले पाइथन dict पर। – Justin