-1

この質問は主観的なものと思われるかもしれませんが、Python で最もよくサポートされている一般的な構造化テキスト データ形式を SO ユーザーに尋ねたいと思います。

私の最初の選択は次のとおりです。

  • XML
  • JSON
  • および YAML

これら 3 つのうちどれが Python で最も簡単に操作できるか (つまり、最高のライブラリ サポート/パフォーマンスを備えているか) ... または、Python でより適切にサポートされている、私が言及していない別の形式があります。

相互運用性が非常に重要であるため、Python のみの形式 (Pickling など) は使用できませんが、これらのファイルを処理するコードの大部分は Python で記述されるため、Python で最も強力にサポートされている形式を使用したいと考えています。

CSV または固定列テキストもほとんどのユースケースで実行可能ですが、よりスケーラブルな形式の柔軟性が望ましいです。

ありがとうございました

ノート

相互運用性に関しては、最初は を使用して Ruby からこれらのファイルを生成しますが、BuilderRuby がこれらのファイルを再度使用することはありません。

4

4 に答える 4

4

私は JSON を使用します。つまり、YAML は素晴らしいですが、それとの相互運用性はそれほど優れていません。
XML は見た目がごちゃごちゃしているだけで、脂肪が多すぎます。

Python には、バージョン 2.6 以降、JSON モジュールが組み込まれています。

于 2010-10-02T05:55:58.460 に答える
3

JSON は優れた Python サポートを備えており、XML よりもはるかにコンパクトです (また、オブジェクトをダンプしてロードするだけの場合は、API の方が一般的に便利です)。私が知っている YAML のすぐに使えるサポートはありませんが、実際には確認していません。要約すると、形式のオーバーヘッドが低く、言語サポートが幅広いため、JSON を使用することをお勧めしますが、アプリケーションに少し依存します。既にアプリケーションが確立されているスペースで作業している場合は、形式技術的に不十分な場合でも、使用する方が望ましい場合があります。

于 2010-10-02T05:57:06.103 に答える
1

それは、データをどうする必要があるかに大きく依存すると思います。複雑なデータベースを構築し、その上で処理と変換を行う場合は、XML を使用したほうがよいと思います。lxmlこの点で、このモジュールは非常に便利であることがわかりました。xpath や xslt などの標準を完全にサポートしており、このサポートはネイティブ コードに実装されているため、優れたパフォーマンスが得られます。

しかし、もっと単純なことをしているのであれば、yaml や json のような単純な形式を使用する方がよいでしょう。「json 変換」については聞いたことがありますが、その技術がどの程度成熟しているか、Python のそれへのアクセスがどの程度発達しているかはわかりません。

于 2010-10-02T06:08:32.163 に答える
0

この3つのうち、それはほとんどすべて同じです。相互運用しやすい方を使用してください。

于 2010-10-02T05:54:39.520 に答える