pythonその4 環境周りとdjangoインストール

ファイルの先頭行に何を書くのか?
直接実行したい時は以下を書くと良い。

#!/usr/bin/env python

具体的には直接実行しないクラスを書いたファイルには不要。

デフォルトエンコーディングは書いておいた方が良さそう。

# -*- coding: utf-8 -*-

rubyでのrbenvみたいなのは?
わたしゃさくらのvpsにubuntu 14.04.02 LTSを入れて学習中。

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.2 LTS"

なのですが、既に以下の状態。ここから実行環境の切り替えとかできるんだろうか…

$ find /usr/bin -name "python*" | xargs ls -l
lrwxrwxrwx 1 root root       9 Dec 21  2013 /usr/bin/python -> python2.7
lrwxrwxrwx 1 root root       9 Dec 21  2013 /usr/bin/python2 -> python2.7
-rwxr-xr-x 1 root root 3345416 Jun 23 03:51 /usr/bin/python2.7
lrwxrwxrwx 1 root root       9 Mar 23  2014 /usr/bin/python3 -> python3.4
-rwxr-xr-x 2 root root 4061272 Jun 20 00:35 /usr/bin/python3.4
-rwxr-xr-x 2 root root 4061272 Jun 20 00:35 /usr/bin/python3.4m
lrwxrwxrwx 1 root root      10 Mar 23  2014 /usr/bin/python3m -> python3.4m

rubyのrbenvみたいなのは、direnvかpyenvらしい。virtualenvはその前みたい。誰かその辺の歴史みたいなのとかまとめてくれんかな。direnvはpythonもrubyもまとめて面倒みまっせ的なものみたいだけど、既にrbenvは導入済だし、今回はpyenvでやってみることにする。他の人のやり方を見つつ、以前にrbenv入れたのをhistoryで推測しながら以下を実行した。

% cd /opt
% sudo git clone git://github.com/yyuu/pyenv.git pyenv
% sudo groupadd pyenv
% sudo gpasswd -a ユーザ名 pyenv
% sudo chgrp -R pyenv pyenv
% sudo chmod -R g+rwxXs /opt/pyenv
% sudo mkdir /opt/pyenv/shims
% sudo mkdir /opt/pyenv/versions
% sudo chmod -R g+rwxXs /opt/pyenv/shims
% sudo chmod -R g+rwxXs /opt/pyenv/versions
% echo 'export PYENV_ROOT="/opt/pyenv"' >> .zshrc
% echo 'if [ -d "${PYENV_ROOT}" ]; then' >> .zshrc
% echo '    export PATH=${PYENV_ROOT}/bin:$PATH' >> .zshrc
% echo '    eval "$(pyenv init -)"' >> .zshrc
% echo 'fi' >> ~/.zshrc
% source ~/.zshrc

なお、参考にさせていただいたのは以下でございます m(. .)m

Ubuntu 12.04でpyenvを利用して速攻でPython3.4 + Nginx + uWSGI + FlaskなWebアプリケーション実行環境を作る (Qiita)

Ubuntuにpyenvを用いてpythn環境を構築しました。(たくのこWeb)

/usr/binにインストールされているpythonは置いといて、version 3.4.3をインストール。インストール前にdjangoとversionの整合性は確認した。インストールにはそこそこ時間かかる。何やらWARNINGが出てるが、気にしないったら気にしない。


% pyenv install 3.4.3
Downloading Python-3.4.3.tgz...
-> https://yyuu.github.io/pythons/4281ff86778db65892c05151d5de738d
Installing Python-3.4.3...
WARNING: The Python bz2 extension was not compiled. Missing the bzip2 lib?
WARNING: The Python readline extension was not compiled. Missing the GNU readline lib?
Installed Python-3.4.3 to /opt/pyenv/versions/3.4.3

% dpkg -l | grep bzip2
ii bzip2 1.0.6-5 amd64 high-quality block-sorting file compressor - utilities
% dpkg -l | grep readline
ii libreadline6:amd64 6.3-4ubuntu2 amd64 GNU readline and history libraries, run-time libraries
ii readline-common 6.3-4ubuntu2 all GNU readline and history libraries, common files
ii rlwrap 0.37-5 amd64 readline feature command line wrapper

 

rubyでいうところのgem(パッケージ管理)はpipだそうだ。pipは実行環境を先ほどインストールした3.4.3に切り替えたら入ってた。なのでdjangoをインストール。公式にある通りコマンド打ってみる。

% pip install Django==1.8.3
You are using pip version 6.0.8, however version 7.1.0 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Collecting Django==1.8.3
Downloading Django-1.8.3-py2.py3-none-any.whl (6.2MB)
100% |################################| 6.2MB 70kB/s
Installing collected packages: Django

Successfully installed Django-1.8.3

% python
Python 3.4.3 (default, Aug 12 2015, 11:57:13)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> print(django.get_version())
1.8.3
>>>

% 

 

Comments on this post

No comments.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Trackbacks and Pingbacks on this post

No trackbacks.

TrackBack URL