प्रोटो

समस्या की शिकायत करें सोर्स देखें Nightly · 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

प्रोटोकॉल मैसेज प्रोसेस करने के लिए मॉड्यूल.

सदस्य

encode_text

string proto.encode_text(x)

स्ट्रक्चर आर्ग्युमेंट की एन्कोडिंग को टेक्स्ट फ़ॉर्मैट वाले प्रोटोकॉल मैसेज के तौर पर दिखाता है. डेटा स्ट्रक्चर, बार-बार स्ट्रिंग, इंटेस, फ़्लोट या बूल या इन टाइप के स्ट्रक्चर, क्रम, और डिक्ट से बने होने चाहिए.

किसी निर्देश को मैसेज में बदल दिया जाता है. फ़ील्ड, नाम के क्रम में उत्सर्जित होते हैं. हर उस संरचना फ़ील्ड को अनदेखा किया जाता है जिसकी वैल्यू 'कोई नहीं' होती है.

सूची या टपल जैसे क्रम को दोहराए गए फ़ील्ड में बदल दिया जाता है. इसके एलिमेंट, सीक्वेंस या डिक्शनरी वाले नहीं होने चाहिए.

किसी डायक्शनरी को मैसेज के दोहराए गए फ़ील्ड में बदला जाता है. इसमें 'key' और 'value' नाम के फ़ील्ड होते हैं. एंट्री, दोहराए जाने (शामिल किए जाने) के क्रम में उत्सर्जित होती हैं. डिक्शनरी की कुंजियां स्ट्रिंग या इंट होनी चाहिए. साथ ही, इसकी वैल्यू, सीक्वेंस या डिक्शनरी नहीं होनी चाहिए. उदाहरण:

proto.encode_text(struct(field=123))
# field: 123

proto.encode_text(struct(field=True))
# field: true

proto.encode_text(struct(field=[1, 2, 3]))
# field: 1
# field: 2
# field: 3

proto.encode_text(struct(field='text', ignored_field=None))
# field: "text"

proto.encode_text(struct(field=struct(inner_field='text', ignored_field=None)))
# field {
#   inner_field: "text"
# }

proto.encode_text(struct(field=[struct(inner_field=1), struct(inner_field=2)]))
# field {
#   inner_field: 1
# }
# field {
#   inner_field: 2
# }

proto.encode_text(struct(field=struct(inner_field=struct(inner_inner_field='text'))))
# field {
#    inner_field {
#     inner_inner_field: "text"
#   }
# }

proto.encode_text(struct(foo={4: 3, 2: 1}))
# foo: {
#   key: 4
#   value: 3
# }
# foo: {
#   key: 2
#   value: 1
# }

पैरामीटर

पैरामीटर ब्यौरा
x ज़रूरी है