私の気に入ったPythonicな書き方。

  • リスト内包表記:Pythonといったら、まずこれ。
  • 代入が複数可。swapも簡単「a, b = b, a」
  • 比較も複数可。「a != x or b != y」より「(a, b) != (x, y)」がわかりやすい。
  • 範囲判定。「0 <= x < n」とか「x in range(n)」。わかりやすい。
  • 反転。「a[::-1]」
  • 上の応用でaが2次元のとき、90度回転。「zip(*a[::-1])」
  • ポインタでなく指している先を変える。「a[:] = ...」
  • コンテナかどうか。「isinstance(..., collections.Iteranle)」
  • 最大公約数
def gcd(a, b):
	while b: a, b = b, a % b
	return a

Python ORセミナーします。

https://kke.smartseminar.jp/public/seminar/view/1014