attrs
Utilitiesクラス定型文なし
概要 attrs
attrs (attr としてインポート) は、ボイラープレートなしで簡潔で正しい Python クラスを作成できる Python パッケージです。 __init__、__repr__、__eq__、その他のダンダー メソッドを自動的に生成し、さらにバリデーター、コンバーター、スロット、および凍結された (不変) クラスをサポートします。
attrs は、Python でクリーンなデータ保持クラスを定義するための一般的な選択肢であり、Python の組み込みデータクラス モジュールに直接影響を与えました。PyRunでは、attrs はマイクロピップ経由で即座にロードされるため、クラス設計パターンについて学習する際に探索するのに最適なライブラリになります。
コードと実行の出力
attrs バリデーターを使用してクリーンな Python クラスを作成します。
Attrs Data Classesエディターで実行
import attr
@attr.s(auto_attribs=True)
class Point:
x: float
y: float
def distance_to(self, other: "Point") -> float:
return ((self.x - other.x)**2 + (self.y - other.y)**2)**0.5
@attr.s(auto_attribs=True)
class Polygon:
name: str
vertices: list = attr.Factory(list)
def perimeter(self) -> float:
pts = self.vertices + [self.vertices[0]]
return sum(pts[i].distance_to(pts[i+1]) for i in range(len(pts)-1))
triangle = Polygon("Triangle", [
Point(0, 0), Point(4, 0), Point(0, 3)
])
print(repr(triangle))
print(f"Perimeter: {triangle.perimeter():.4f}")
print(f"Expected : 12.0000 (3-4-5 right triangle)")関連パッケージ
推奨される Python リソース
関連するインタラクティブなチュートリアル、チートシート、コード比較で知識を深めてください。
Python チュートリアル
Python ループ
Python ループを使用してデータを反復処理する方法を学びます。インタラクティブな例を使用して、for ループ、while ループ、ブレーク、継続、ループのベスト プラクティスをマスターします。
リソースの表示
ハウツーガイド
Python でリストを並べ替える方法
sort() メソッドとsorted() 関数を使用して、Python でリストを並べ替える方法を学びます。カスタムキーの並べ替えと逆順の例をご覧ください。
リソースの表示
チートシート
Python 文字列メソッドのチートシート
Python 文字列操作の完全なリファレンス ガイド。文字列プロパティの書式設定、検索、分割、置換、チェックをマスターします。
リソースの表示
言語の比較
Python と JavaScript: どちらのプログラミング言語が最適ですか?
Python と JavaScript の包括的な比較。構文の違い、パフォーマンス、使用例 (バックエンドとフロントエンド)、およびコーディング例を調べます。
リソースの表示