mixhostでPython使いたいんだけど、使えるのかな?
そんな疑問を解消するために、この記事ではmixhostでのPython使用について書いていきたいと思います。
この記事でやること
- mixhostに入っているPythonの確認
- Pythonをmixhostにインストール(Anaconda)
- Pythonのバージョンを変更
- Pythonで仮想環境を作成
mixhostでPythonを使っていきましょう。
mixhostにPythonは入っている
mixhostのプログラムパスを見てみるとPythonは/usr/bin/pythonに入っています。
ホームディレクトリ | /home/ユーザー名 |
---|---|
Perl | /usr/bin/perl |
PHP | /usr/bin/php |
sendmail | /usr/sbin/sendmail |
gzip | /usr/bin/gzip |
zip | /usr/bin/zip |
unzip | /usr/bin/unzip |
mysql | /usr/bin/mysql |
mysqldump | /usr/bin/mysqldump |
ImageMagick | /usr/bin/convert |
Python | /usr/bin/python |
pythonを確認してみる
SSH接続して実際に確認してみます。
[〇〇 ~]$ /usr/bin/python --version
Python 2.7.5
バージョン2.7.5か、ちょっと古いね。
確かにそうですよね。
試しに他のバージョンこの中にないのかな?とか思ってみても/usr/binの中には新しめのバージョンはないですね。
[〇〇 ~]$ ls /usr/bin | grep python
python
python2
python2.7
Pythonをインストールする
Pythonのバージョンが古いので、できるだけ新しいものを使いたいです。Anaconda経由でインストールします。
// pyenv
$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv
//bash_profileに記述
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
echo 'export TMPDIR="$HOME/tmp"' >> ~/.bash_profile
$ source ~/.bash_profile
// installしたいバージョンを確認
$ pyenv install -l | grep anaconda
$ pyenv install anaconda3-2022.05
AnacondaとPythonの対応
AnacondaとPythonの対応ですが、使いたいPythonのバージョンが決まっているならそれに対応するAnacondaを入れるといいです。
Anaconda3-2022.05 | Python 3.9.12 |
Anaconda3-2021.11 | Python 3.9.7 |
Anaconda3-2021.05 | Python 3.8.8 |
Anaconda3-2021.04 | Python 3.8.8 |
Anaconda3-2020.11 | Python 3.8.5 |
Anaconda3-2020.07 | Python 3.8.3 |
Anaconda3-2020.02 | Python 3.7.6 |
Anaconda3-2019.10 | Python 3.7.4 |
Anaconda3-2019.07 | Python 3.7.3 |
Anaconda3-2019.03 | Python 3.7.3 |
Anaconda3-2018.12 | Python 3.7.1 |
Anaconda3-5.3.1 | Python 3.7.0 |
Anaconda3-5.3.0 | Python 3.7.0 |
Anaconda3-5.2.0 | Python 3.6.5 |
今回はanaconda3-2022.05を選択したので、Python3.9.12になるはずです。Anacondaをインストールしたらパスを通します。
// home配下のユーザー名は自分の名前に変更
$ echo 'export PATH="/home/〇〇/.pyenv/versions/anaconda3-2022.05/bin:$PATH"' >> ~/.bash_profile
$ source ~/.bash_profile
設定してみるとちゃんと入りましたね。
$ conda --version
conda 4.12.0
$ python --version
Python 3.9.12
これで3.9.12のPythonを使うことができるようになりました。
もしうまくいかなかったら、.bash_profileを見てみるといいです。home/○○の部分が文字化けして記述されてしまっている場合があったりします。
インストールしたPythonで仮想環境(.venv)を作る
せっかくインストールしたのでインストールしたPythonを使ってみます。仮想環境を作ってみましょう。
$ mkdir project
$ cd project
$ vim index.py
# 以下を記述
import requests
print(requests.get("https://www.python.jp").text)
index.pyにはrequestsが必要なコードを書きました。このコードを実行するにはrequestsをインストールする必要があります。
.venvを作成します。
$ python -m venv .venv
#これで配下に.venvが作られます。
仮想環境を有効化する
仮想環境を作ったので有効化します。
$ . .venv/bin/activate
# 有効化すると以下のような表示になります。
(.venv) [〇〇 project]$
仮想環境を有効化したらrequestsを入れます。
$ python -m pip install requests
これでファイルを実行するとrequestsが入っているのでちゃんと動いてくれました。
$ python index.py
# 実行結果が表示される。
まとめ
mixhostでPythonを使うっていうことをやったけど、今回は以下のことをやりました。
- Anacondaをインストール(Pythonもインストールされる)
- Pythonのバージョンを3.9.12に変更
- 仮想環境を作成
デフォルトでPython入っているから便利ではあるけど、バージョンが2系だと古いので気になったらやっぱり新しいバージョンのPython使いたくなってしまいますよね。
とりあえずAnaconda経由で入れて動かすことができました。