GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

marshmallow-code

marshmallow – 複雑なオブジェクトを単純なPythonデータ型との間で変換するための軽量ライブラリ

投稿日:

複雑なオブジェクトを単純なPythonデータ型との間で変換するための軽量ライブラリ。 http://marshmallow.readthedocs.io/

marshmallow:単純化されたオブジェクトの直列化

marshmallowは、オブジェクトなどの複雑なデータ型をネイティブのPythonデータ型に変換するORM / ODM /フレームワークに依存しないライブラリです。

from datetime import date
from marshmallow import Schema, fields, pprint

class ArtistSchema(Schema):
    name = fields.Str()

class AlbumSchema(Schema):
    title = fields.Str()
    release_date = fields.Date()
    artist = fields.Nested(ArtistSchema())

bowie = dict(name='David Bowie')
album = dict(artist=bowie, title='Hunky Dory', release_date=date(1971, 12, 17))

schema = AlbumSchema()
result = schema.dump(album)
pprint(result, indent=2)
# { 'artist': {'name': 'David Bowie'},
#   'release_date': '1971-12-17',
#   'title': 'Hunky Dory'}

要するに、マシュマロスキーマは次の目的で使用できます。

  • 入力データを検証します。
  • 入力データをアプリケーションレベルのオブジェクトにデシリアライズします。
  • アプリレベルのオブジェクトをプリミティブなPythonタイプにシリアル化します。 シリアライズされたオブジェクトは、HTTP APIで使用するJSONなどの標準形式にレンダリングできます。

Get It Now

$ pip install -U marshmallow --pre

ドキュメンテーション

完全なドキュメントはhttp://marshmallow.readthedocs.io/にあります。

要件

  • Python> = 2.7または> = 3.4

marshmallowにはPython標準ライブラリ以外の外部依存関係はありませんが、 python-dateutilは堅牢なdatetimeの逆シリアル化に推奨されています。

生態系

マシュマロ関連のライブラリのリストは、GitHub wikiにあります:

https://github.com/marshmallow-code/marshmallow/wiki/Ecosystem

プロジェクトリンク

ライセンス

MITのライセンス。 詳細については、バンドルされたLICENSEファイルを参照してください。







-marshmallow-code
-, , , , , ,

執筆者: