SUPPORT UKRAINE
- Your indifference to the act of cruelty can thrive rogue nations like Russia -
タグ
python
を含むブログ一覧
【 Python Data Structures and Algorithms 】Linked List 実装 Programming Interview 解答例
Published 2020年8月1日12:44 by mootaro23
Linked List 実装問題の解答例です。問題は こちら から。是非挑戦してみてください。
ただ1つの正解、は存在しません。
実装方法の1つとして参考にしてください。
class Node:
"""
Linked List を構成する要素 ( ノード )。
"""
def __init__(self, name: str,…
【 Python Data Structures and Algorithms 】Python とデータ構造 ( data structure ) - linked list を実装してみよう! Linked List 実装 Python Programming Interview 模擬問題
Published 2020年8月1日12:33 by mootaro23
プログラム開発をする上で、データ構造 ( data structure ) とアルゴリズム ( algorithm ) の知識は必須です。
そこで今回は Linked List を実装してみます。
Linked List は要素 ( ノード: node ) のただの羅列に過ぎません。
しかし、それぞれのノードは、自分の次に並んでいるノードの情報を持っています。
…
【 Effective Python, 2nd Edition 】__set_name__ デスクリプタ専用特殊関数 ( special method for descriptor ) を利用してデスクリプタインスタンスを割り当てたクラス変数名を取得し、コードの冗長性を排除しよう!
Published 2020年7月28日21:30 by mootaro23
メタクラス ( metaclass ) を利用することで、クラスの「型」が完全に作られる前にクラス属性を操作することができます。
さらに、デスクリプタ ( descriptor ) を利用すると、デスクリプタインスタンスを含むクラスとその属性のよりきめ細かい操作が可能になるんです。
例えば、顧客データベースの各フィールドに相当するクラスを作成するとします。
今回は、…
【Python 雑談・雑学】デスクリプタ ( descriptor ) をしっかりと理解しよう!
Published 2020年7月27日21:34 by mootaro23
次のプログラムを実行した際に4つの print 文で出力されるそれぞれの内容が分かりますか?
class Field:
def __init__(self, name):
self.name = name
self.internal_name = '_' + self.name
def __get__(self, instance, …
【 Effective Python, 2nd Edition 】サブクラス定義に付随させて必ず行いたい操作がある場合は、メタクラス ( metaclass )、または、__init_subclass__ 特殊関数を利用してド忘れを防止しよう!
Published 2020年7月25日18:42 by mootaro23
メタクラスの用途として、ある属性の有無や属性値の値によってクラスの機能を変化させる、サブクラス定義に必要な属性が含まれているか、属性値は有効かを検証する、等がありますが、型を記録しておき将来的に復元可能にする、という操作にも最適です。
例えば、Python オブジェクトの「型紙」をパラメータの値も含めて JSON 形式にシリアル化しておき、将来的な復元に備えて保存したいとします。
…
【 Effective Python, 2nd Edition 】今回も懲りずにメタクラス ( metaclass ) - __init_subclass__() 特殊関数でメタクラスをもっと活用しよう!
Published 2020年7月23日18:23 by mootaro23
前回 は、メタクラスでどんなことができるのか、どんな動作をしているのか、ということを少しでも理解しようとモガいてみましたが、今回も懲りずに続きです。
今回はメタクラスの一般的な使い途の1つである「サブクラス定義の検証」を見ていきたいと思います。
「多角形 ( multisided polygon ) 」を象徴するクラスを考えます。
各サブクラスでは「何」角形であるの…
【Python 雑談・雑学】メタクラス ( metaclass ) とデコレータ ( decorator ) で遊んでみる、考えてみる!
Published 2020年7月21日20:29 by mootaro23
クラスはオブジェクトの設計図であり、メタクラス ( metaclass ) はクラスの設計図である、といわれたところで全然分かりません。
ただ、昨今のプログラミング環境においてブラックボックス的に機能を提供してくれる先進的なフレームワークやライブラリ、例えば Django における Forms など、が、このメタクラスによって実現されていることは確かなんです。
どんなものなの…