列挙型を使用したProtobufの奇妙な動作

anteatersa

私は次のprotobuf定義を持っています:

syntax = "proto3";                                                                                                                                                                                                                                                                                                                                                                                                              
message ACL {                                                                                                                                                                                                   
  enum Foo {
    BAR = 0;
    BAZ = 1;
  }
  enum Corpus {
    UNIVERSAL = 0;
    WEB = 1;
  }
  Foo foo = 1;
  Corpus corpus = 2;
}

Pythonで使用すると、コーパスフィールドは保存/表示されますが、fooフィールドは保存/表示されません。

>>> import acl_pb2
>>> p = acl_pb2.ACL(foo="BAR", corpus="WEB")
>>> p
corpus: WEB
マーク・グラヴェル

proto3では、ゼロはデフォルトであり、デフォルトはゼロです。デフォルト(ゼロ)は送信されません。したがって、実際のデータは送信されませんfoo = "Bar"。これはゼロであるためです。しかし、あなたのモデルは、それが発見することができるはずfoo存在しているの暗黙の値Bar/を0そうでない場合、それはpythoncode-genの好奇心のように聞こえます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

列挙型の逆/シリアル化中のこの奇妙な動作の説明を探しています

分類Dev

列挙型クラスの値を比較するときの奇妙な動作

分類Dev

zshの「options」配列を使用したdeclare / typesetの奇妙な動作

分類Dev

cdkCdkDragDropを使用した2つの配列の奇妙な動作

分類Dev

gcc7の列挙型と3値の奇妙な動作

分類Dev

strtokとfgetsを使用した奇妙な配列の動作

分類Dev

switchcaseと文字列「-0」を使用したPHPの奇妙な動作

分類Dev

配列を使用したコロン演算子の奇妙な動作

分類Dev

非常に奇妙な動作をするJava列挙型

分類Dev

奇妙な列挙子の動作(副作用?)

分類Dev

パンダデータフレームを使用している間の列挙の奇妙な動作

分類Dev

範囲外の値を持つ列挙型を解析するときの奇妙な動作

分類Dev

PHP:オブジェクト型を配列にキャストした後の奇妙な配列の動作

分類Dev

文字列サイズの奇妙な動作を使用したモジュラス

分類Dev

fork();を使用した奇妙な動作。

分類Dev

式JavaScriptを使用した奇妙な動作

分類Dev

LayoutParamsを使用した奇妙な動作

分類Dev

<<演算子を使用した奇妙な動作

分類Dev

asynctaskを使用した奇妙な動作

分類Dev

zshPATHを使用した奇妙な動作

分類Dev

.htaccessCookieを使用した奇妙な動作

分類Dev

viewWithTagを使用した奇妙な動作UITableView

分類Dev

SqlParameterを使用した奇妙な動作

分類Dev

列挙型メソッドをオーバーライドする際の奇妙な動作。getClass()。getInterfaces()は正しく機能していますか?

分類Dev

特定のCSSを使用したHTMLリストの奇妙な動作

分類Dev

JSFを使用したJavascriptの奇妙な論理演算子の動作: `&&`

分類Dev

日時を使用したpythonmatplotlibからのbarplotの奇妙な動作

分類Dev

複数のSVG <animate>を使用した奇妙なSafariの動作

分類Dev

未処理の例外のtrycatchを使用した奇妙な動作

Related 関連記事

  1. 1

    列挙型の逆/シリアル化中のこの奇妙な動作の説明を探しています

  2. 2

    列挙型クラスの値を比較するときの奇妙な動作

  3. 3

    zshの「options」配列を使用したdeclare / typesetの奇妙な動作

  4. 4

    cdkCdkDragDropを使用した2つの配列の奇妙な動作

  5. 5

    gcc7の列挙型と3値の奇妙な動作

  6. 6

    strtokとfgetsを使用した奇妙な配列の動作

  7. 7

    switchcaseと文字列「-0」を使用したPHPの奇妙な動作

  8. 8

    配列を使用したコロン演算子の奇妙な動作

  9. 9

    非常に奇妙な動作をするJava列挙型

  10. 10

    奇妙な列挙子の動作(副作用?)

  11. 11

    パンダデータフレームを使用している間の列挙の奇妙な動作

  12. 12

    範囲外の値を持つ列挙型を解析するときの奇妙な動作

  13. 13

    PHP:オブジェクト型を配列にキャストした後の奇妙な配列の動作

  14. 14

    文字列サイズの奇妙な動作を使用したモジュラス

  15. 15

    fork();を使用した奇妙な動作。

  16. 16

    式JavaScriptを使用した奇妙な動作

  17. 17

    LayoutParamsを使用した奇妙な動作

  18. 18

    <<演算子を使用した奇妙な動作

  19. 19

    asynctaskを使用した奇妙な動作

  20. 20

    zshPATHを使用した奇妙な動作

  21. 21

    .htaccessCookieを使用した奇妙な動作

  22. 22

    viewWithTagを使用した奇妙な動作UITableView

  23. 23

    SqlParameterを使用した奇妙な動作

  24. 24

    列挙型メソッドをオーバーライドする際の奇妙な動作。getClass()。getInterfaces()は正しく機能していますか?

  25. 25

    特定のCSSを使用したHTMLリストの奇妙な動作

  26. 26

    JSFを使用したJavascriptの奇妙な論理演算子の動作: `&&`

  27. 27

    日時を使用したpythonmatplotlibからのbarplotの奇妙な動作

  28. 28

    複数のSVG <animate>を使用した奇妙なSafariの動作

  29. 29

    未処理の例外のtrycatchを使用した奇妙な動作

ホットタグ

アーカイブ