お知らせ:

【 Python coding challenge 】Gutenberg Project からダウンロードする実際の古典を題材に、登場人物インデックスを作成しよう! Python Programming Interview の準備にもなります

Tags: challenge , programming , python

Published 2020年8月3日21:08 by T.Tsuyoshi

今回の課題は、実際の小説 ( eBook ) の登場人物が何ページ目に登場しているか、という登場人物インデックスの作成です。 Gutenberg Project という著作権の切れた古典をデジタル化して提供してくれているサイトからテキストをダウンロードし、任意の行数を含むページとして区切った上でインデックス作成を行います。 最終的な出力結果は次のようになります。 A…

【 Python Data Structures and Algorithms 】Linked List 実装 Programming Interview 解答例

Tags: algorithm , challenge , python

Published 2020年8月1日12:44 by T.Tsuyoshi

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 模擬問題

Tags: algorithm , challenge , programming , python

Published 2020年8月1日12:33 by T.Tsuyoshi

プログラム開発をする上で、データ構造 ( data structure ) とアルゴリズム ( algorithm ) の知識は必須です。 そこで今回は Linked List を実装してみます。 Linked List は要素 ( ノード: node ) のただの羅列に過ぎません。 しかし、それぞれのノードは、自分の次に並んでいるノードの情報を持っています。 …

【 Effective Python, 2nd Edition 】__set_name__ デスクリプタ専用特殊関数 ( special method for descriptor ) を利用してデスクリプタインスタンスを割り当てたクラス変数名を取得し、コードの冗長性を排除しよう!

Tags: descriptor , metaclass , __set_name__ , python , effective

Published 2020年7月28日21:30 by T.Tsuyoshi

メタクラス ( metaclass ) を利用することで、クラスの「型」が完全に作られる前にクラス属性を操作することができます。 さらに、デスクリプタ ( descriptor ) を利用すると、デスクリプタインスタンスを含むクラスとその属性のよりきめ細かい操作が可能になるんです。 例えば、顧客データベースの各フィールドに相当するクラスを作成するとします。 今回は、…

【Python 雑談・雑学】デスクリプタ ( descriptor ) をしっかりと理解しよう!

Tags: miscellaneous , descriptor , __set__ , __get__ , python

Published 2020年7月27日21:34 by T.Tsuyoshi

次のプログラムを実行した際に4つの print 文で出力されるそれぞれの内容が分かりますか? class Field: def __init__(self, name): self.name = name self.internal_name = '_' + self.name def __get__(self, instance, …