Python の構造的パターンマッチング 1 の使い方についてかんたんにまとめました。
構造的パターンマッチングは一見シンプルですがさまざまな使い方ができる非常に強力な機能です。
正しく理解し…
skeeze による Pixabay からの画像
Python の := 演…
Python で オブジェクトのアトリビュートへのアクセスがあったときに内部で起こっていること について説明してみます。
# オブジェクトのアトリビュートへのアクセスがあると・・・?
obj.…
追記 2021/06/29: Python 3.10 で match case の構造的パターンマッチング構文が導入されました:
パターンマッチング構文( match case )の使い方
…
Python のキーワード yield の使い方について説明します。
目次
yield とは
yield でジェネレータを作る
yield でコンテキストマネージャを作る
yield fro…
Python のデコレータに引数を渡す方法について見てみます。
具体的には「引数を取ることができるデコレータの作り方」を見ていきます。
まずはかんたんにおさらいから。 Python では @デ…
タイトルそのままですが、 Python 3 の nonlocal の利用方法について説明してみたいと思います。
Python の変数スコープは原則「関数」がスコープの切れ目となっており、関数の…
今回は Python のイテレータ生成クラスを使う方法についてご紹介します。
Python でイテレータ( iterator )を生成する関数のことを「ジェネレータ」( generator )…
Python の import 文の使い方をご紹介します。
Python で他のモジュールやパッケージを読み込む方法といえば import ですが、その import にもいろいろな使い方があ…
Python のデコレータの使い方について見てみます。
デコレータとは、関数やクラスを「装飾」する機能のこと。デコレータを使うことで、既存の関数やクラスの中身を直接触ること なく、その外側から機…
Python の内包表記についてまとめました。
内包表記とは?
内包表記とは、リストや辞書などの iterable オブジェクト( for ループで回せるオブジェクト)のループ処理をかんたん・…
Python には staticmethod と classmethod というよく似たふたつのデコレータが存在します。一見わかりづらいこれらのちがいについて今回は見ていきます。
結論からざっ…
Python でスーパークラスのインスタンスメソッドを呼び出すときに使える super() 関数の使い方をご紹介します。
Python 3 の場合
まずは例を見てください。
class Dog…
Python でイテレータを生成する関数の使い方についてご紹介します。
このイテレータを生成する関数のことを Python では「ジェネレータ」と呼んだりします。
具体的には、通常関数が戻り値…
Python 2 の高階関数のうち、組み込みで用意されている基本的なものについてご紹介します。
具体的には次の 3 つを見ていきます。
map()
filter()
reduce()
個別…
Python 2 の print 文についてご紹介します。
print '文字列'
Python 3 からは print は関数として位置づけられています。 Python 3 の print(…
追記 2018/05/23: Python の例外に興味がある方 には次の記事も参考になるかもしれません。よろしければご覧ください。
Python Tips: Python の例外システムを活…
Python の予約語について見てみます。
予約語とは構文上特殊な意味を持つことばのことです。
変数や関数に予約語と同じ名前をつけることはできません。
Python では次の単語が予約語として…
Python の変数名のつけ方に関するルールについてご紹介します。
Python の変数の名前( identifier/name )には次の 3 種類の文字を使うことができます。
a ~ z…
Python における無名関数の使い方についてご説明します。
Python では lambda 式を使って無名関数を定義することができます。
myfunc = lambda x: x ** 2…
Python のクラスの使い方をご紹介します。
定義
クラスは class クラス名(継承したいクラス名): という形で定義します。
class MyClass(ParentClass):
…
Python の関数の使い方をご紹介します。
定義
関数はキーワード def を使って定義します。
def printhello(string):
print 'hello, %s' …