sci

最果て風呂

Python3 チュートリアルを読む

Python3 の Tutorial を読み終った。ある程度内容を知っているということもあるけれど、英文が平易でわかりやすい。特に Modules と Virtual Envrironment が印象に残りました。

今までモジュールのことを気にしていなかったけれども、自分の作成したスクリプトがライブラリのように import して使えるようになのですね。古いスクリプトをちょっと修正すると自作ライブラリが完成する。使い捨てじゃなくなるの!なるほどねぇ。

そのスクリプト(ファイル)内ではグローバル変数なのだけれど、import して使った場合に「モジュール名.変数名」のようにしなければアクセスができず、まるでクラス変数のような感じ。今さらながらにしてすげ〜って思っちゃったわ。

仮想環境を作成する方法は以前とは変わったみたい。自分が仮想環境と初めて触れたのは Flask のチュートリアルで、下記のような手順で行ったのでした。

sudo pip install virtualenv
mkdir myproj
cd myproj
virtualenv venv
. venv/bin/activate
pip install Flask

このため「あるプロジェクトのディレクトリ内に特定のバージョンの仮想環境を閉じ込める。そして仮想環境はプロジェクト毎に作成する」という認識でいました。しかし本家のチュートリアルによると、

python3 -m venv tutorial-env
source tutorial-env/bin/activate

とするようになっています。virtualenv のパッケージは必要なくなったようですし、「パッケージ毎」というのに拘る必要もなさそう?つまり、python2.7 や python3.5 のような 仮想環境を(プロジェクトとは無関係の)どこかに作成しておき、必要に応じて activate で読み込んで特定のバージョンやライブラリ依存の環境を再現する、そしてそれは deactivate で抜けるまで続く、という感じ。

Python を使いはじめてからチュートリアルを最初から最後まで読んだのははじめてなんじゃないかと思います。発見というか良い体験をすることができました。

何度も書いている気がするけれど、Python のドキュメントは読み易い英語なので助かります。英語を母国語としていない人の存在を意識している感じがする。

Python っていつから使いはじめたんだっけなぁと思って調べてみると、2010年04月11日からみたい。実は 2009年07月01日に 3.1 のソースをダウンロードしたものの、ビルドエラーでなかなか使うことが出来なかったみたいです。そして一週間はあれこれ挑戦していたのだけれど、結局諦めたのでした。当時のマシンにはデフォルトで 2.3 が入っていたのですけれど、3 系から始めたかったんですよね、なんとなく。

ちなみに Ruby は 1998年01月19日(ruby-1.0-971209)らしい。こちらもビルドが上手くいかなかったものの、1 日で解決したようだわ。その原因は「カーネルのバージョンアップをした時に、/usr/src/linux-2.0.30 を /usr/src/linux-2.0.32 と名前を変更してしまったためだった」らしい。当時は「カーネルの再構築」なんてやってたんですね。