Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonでCerberusを使用してデータを検証する方法


はじめに

PythonのCerberusモジュールは、強力でありながら軽量のデータ検証機能を提供します。さまざまなアプリケーションやカスタム検証に拡張できるように設計されています。

最初にスキーマを定義し、次にスキームに対してデータを検証し、提供された条件に一致するかどうかを確認します。そうでない場合は、正確なエラーがスローされ、問題が発生した場所が表示されます。

検証のために、さまざまな条件をデータフィールドに一度に適用できます。

はじめに

Cerberusを使用するには、Pythonにパッケージ化されていないため、最初にインストールする必要があります。

ダウンロードしてインストールするには、pipパッケージマネージャーを使用します。

ターミナルを起動し、以下のコマンドを使用します。

pip install Cerberus

Cerberusライブラリを正常にダウンロードしてインストールしたら、そのバリデーターモジュールをPythonスクリプトにインポートする必要があります。

from cerberus import Validator

以上です。これで、データの検証を開始する準備が整いました。

辞書に存在するデータの検証

まず、スキーマを作成する必要があります。

schema = {'numbers': {'type': 'integer'}}
v = Validator(schema)

つまり、Python辞書では、数値フィールドには整数のみを含める必要があります。

data = {'numbers': 5}

上記は、検証する必要のあるデータです。

if v.validate(data):
   print("Data is valid")
else:
   print("Data is invalid")

これにより、以前に作成したスキームに対してデータが検証されます。

from cerberus import Validator
schema = {'numbers': {'type': 'integer'}}
v = Validator(schema)
data = {'numbers': 5}
if v.validate(data):
   print("Data is valid")
else:
   print("Data is invalid")

出力

Data is valid .

さまざまなルールと印刷エラーによる検証

from cerberus import Validator
v = Validator()
v.schema = {'ID': {'required': True, 'type': 'number'},
'age': {'type': 'integer'}}
if v.validate({'age': 60}):
   print('Data is valid')
else:
   print('Data is invalid')
   print(v.errors)

出力

Data is invalid, {'ID': ['required field']}


最小値と最大値の範囲の設定

from cerberus import Validator
v = Validator()
v.schema = {'name': { 'type': 'string', 'minlength': 5},
'age': {'type': 'integer', 'min': 18, 'max': 65}}
if v.validate({'name': 'VJ', 'age': 16}):
   print('Data is valid')
else:
   print('Data is invalid')
   print(v.errors)

出力

Data is invalid
{'age': ['min value is 18'], 'name': ['min length is 5']}

これで、Cerberusライブラリを使用して同様の方法で辞書やjsonファイルなどを検証できるようになりました。

結論

独自のカスタムスキーマを備えたCerberusライブラリを使用してデータを検証する方法を学びました。

この方法を使用すると、jsonファイル、APIから抽出されたデータなどを検証できます。

主にデータベースの構築中またはデータ分析の作業中のエラーを回避するために、データを検証しました。

データの検証を自動化し、それに基づいて動的なWebサイトを構築することもできます。


  1. Pythonの「seaborn」ライブラリを使用してデータを視覚的に表現するにはどうすればよいですか?

    機械学習では、データからモデルを作成し、これまでに見たことのないデータを一般化します。入力として機械学習モデルに提供されるデータは、システムがデータを適切に理解して結果を生成できるようにする必要があります。 Seabornは、データの視覚化に役立つライブラリです。カスタマイズされたテーマと高レベルのインターフェースが付属しています。このインターフェースは、データの種類と、特定のフィルターが適用されたときのデータの動作をカスタマイズおよび制御するのに役立ちます。 Seabornライブラリには、さまざまなスタイルでの作業に役立つ「set_Style()」と呼ばれるインターフェースが含まれていま

  2. openpyxlでPythonを使用してExcelでグラフを作成するにはどうすればよいですか?

    この投稿では、Python-Openpyxlモジュールを使用してExcelでチャートを作成する方法を紹介します。 openpyxlモジュールを使用して棒グラフを作成するためのデータとして、テニスプレーヤーのグランドスラムタイトルを使用して、Excelスプレッドシートを最初から作成します。 はじめに.. Microsoft Officeは、より多くの行と列の保存をサポートするために、Office2007からMicrosoftExcelシートに.xlsxという新しい拡張機能の提供を開始しました。この変更により、ExcelシートはZIP圧縮を使用したXMLベースのファイル形式に移行しました。世界は