アルゴリズムとかオーダーとか

仕事で勉強したことなどをまとめてます

python3.6.4の開発環境構築

なんだかんだでpythonで提供されているライブラリを使う頻度が多くなったので、とあるモジュールを作成するにあたり勉強がてらpythonで作成することにしました。

今回は開発環境を構築した時のメモを残しておきます。
自分用のメモなので雑にまとめてます。

  • IntelliJ ideaでプロジェクトを作成。python pluginはインストール済みだったので最初は~/.pyenv/いかにインストールしてるpythonSDKとして指定して作成
  • ちょろっと調べてみたところpythonではプロジェクトテンプレートとかproject manager tool的なものでメジャーなのはないようで、とりあえずここ(github kennethreitz/samplemod)のテンプレートを使うことにした。
  • virtualenv使いたいのでIntelliJ ideaのfile -> project structure -> Project SDK -> new からpython選択してvenvの名前でプロジェクト直下にvirtualenvの環境を作成
  • requirement.txtを見てpluginがlibraryのインストールを進めてきたのでインストール(venv作る前にやるとglobalのsite-packagesにインストールされてややこしいことになると思うので注意)
  • requirement.txtに最初から書かれてるlibraryは次の2つだった。
    • nose: unit testのためのライブラリ
    • sphinx: ドキュメント作成ためのライブラリ
  • コンソールから source venv/bin/activate でvirtual環境にスイッチ
  • コンソールでnosetestsを実行してunit testを走らせる
  • unit testの各ファイルが sampleをimportしてエラーになったので該当部分を変更した名前に修正
  • nosetestsが成功したらとりあえずのセットアップは終了

IntelliJ IDEA 2018-01でpython3のsyntaxを使う方法

  • default のままだとpython2 syntax鹿許可されてなくて type hintとかつけるとエラーになっちゃう
  • Preference->Console->Python Console->Use specified interpreterを変えればOK(なんでConsoleの設定なのか激しくなぞ)

pythonはパッケージ管理系あんまり成熟してないぽいのが意外だった。java -> rubyって触ってきたのでpackage managerがないとなんか落ち着かない。。。