$ sudo yum -y groupinstall "Development Tools"
$ sudo yum -y install readline-devel zlib-devel bzip2-devel sqlite-devel openssl-devel \
libXext.x86_64 libSM.x86_64 libXrender.x86_64 gcc gcc-c++ libffi-devel python-devel bzip2
Nur das Folgende ist in Ordnung.
$ sudo yum -y install zlib tk-devel tcl-devel ncurses-devel gdbm-devel db4-devel readline-devel zlib-devel \
bzip2-devel sqlite-devel openssl-devel libXext.x86_64 libSM.x86_64 libXrender.x86_64 gcc gcc-c++ libffi-devel python-devel patch bzip2
Wenn Sie es später einfügen, müssen Sie anscheinend Python neu erstellen.
$ sudo yum install -y tk.x86_64 tk-devel.x86_64 tkinter.x86_64
pyenv install
$ pyenv_install() {
# skip installation when pyenv is already installed.
if [ `pyenv --version > /dev/null 2>&1; echo $?` == 0 ]; then
echo '.pyenv is already installed.(skipping...)'
return
fi
# pyenv
git clone https://github.com/yyuu/pyenv.git ~/.pyenv;
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile;
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile;
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile;
# pyenv-virtualenv
git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv;
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile;
source ~/.bash_profile;
}
$ pyenv_install
Liste der installierbaren Elemente
$ pyenv install --list
Python2-Serie
$ pyenv install 2.7.12
$ pyenv global 2.7.12
anaconda2 Serie
$ pyenv install anaconda2-4.1.0
$ pyenv global anaconda2-4.1.0
Python3-Serie
$ pyenv install 3.5.2
$ pyenv global 3.5.2
Anaconda3-Serie
$ pyenv install anaconda3-4.1.0
$ pyenv global anaconda3-4.1.0
Überprüfen Sie die installierte Version
$ pyenv versions
pyenv-virtualenv
Es ist bereits in der oben genannten Funktion pyenv_install integriert. Wenn Sie jedoch pyenv-virtualenv verwenden und die zu verwaltenden Pips für jede Anwendung trennen möchten, führen Sie die folgenden Schritte aus
# pyenv-virtualenv
git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
Generieren Sie env für jede Anwendung mit dem folgenden Befehl
$ pyenv virtualenv 3.5.2 application-name
Überprüfen Sie, ob es installiert ist
$ pyenv versions
system
* 3.5.2
3.5.2/envs/application-name
application-name
Schalten
$ pyenv local 3.5.2/envs/application-name
Hier herunterladen https://www.python.org/downloads/
Beispiel) Bei der Installation von Python-2.7.10.
$ curl -OL https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
$ tar zxfv Python-2.7.10.tgz
Bei der Installation von Python in / usr / local / bin / Installieren Sie das Rohr mit "--mit dem Rohr".
$ cd Python-2.7.10
$ sudo ./configure --enable-unicode=ucs4 --prefix=/usr/local --with-ensurepip
$ sudo make
$ sudo make altinstall
Warnung make install kann die python3-Binärdatei überschreiben oder die Verknüpfung unterbrechen. Daher wird make altinstall empfohlen, bei dem nur exec_prefix / bin / pythonversion anstelle von make install installiert wird.
$ curl -OL https://bootstrap.pypa.io/get-pip.py
$ sudo python get-pip.py
Standardmäßig sind Root-Berechtigungen erforderlich. Wenn Sie jedoch pip mit Benutzerberechtigungen ausführen möchten, müssen Sie das Installationsziel an einen Ort ändern, an dem Sie mit Benutzerberechtigungen arbeiten können.
$ mkdir -p ~/local/lib/python/site-packages/
$ echo 'export PYTHONPATH=$HOME/local/lib/python/site-packages:$PYTHONPATH' >> ~/.bash_profile
Geben Sie bei der Pip-Installation den Pfad mit "--install-option" an.
$ pip install --install-option="--prefix=$HOME/local" awscli
Referenz: Geben Sie das Installationsziel von pip an
venv
$ pip install virtualenv
Wenn Sie virtualenvwrapper verwenden möchten, überspringen Sie diesen Schritt hier.
# Python 3.5 oder früher
$ virtualenv sample-env
# Python 3.6 oder später
$ python3 -m venv sample-env
$ ll ~/sample-env/
total 8
drwxr-xr-x 12 user staff 384 Apr 30 13:50 bin
drwxr-xr-x 2 user staff 64 Apr 30 13:50 include
drwxr-xr-x 3 user staff 96 Apr 30 13:50 lib
-rw-r--r-- 1 user staff 75 Apr 30 13:50 pyvenv.cfg
$ source sample-env/bin/activate
$ (sample-env) user@MacBook:~$
$ deactivate
Virtualenvwrapper Dinge, die das Venv-Management erleichtern
Install
$ sudo pip install virtualenvwrapper
Stellen Sie Folgendes ein, da es nicht nur durch Installation verwendet werden kann
Vielleicht / usr / bin / virtualenvwrapper.sh
if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
fi
Geben Sie die Python an, die mit --python
verwendet werden soll. Wenn Sie python3 verwenden, verwenden Sie / usr / local / bin / python3
.
$ mkvirtualenv --python=/usr/local/bin/python sample-env
$ workon
sample-env
activate
$ workon sample-env
deactivate
$ deactivate
$ rmvirtualenv sample-env
pp
import pprint
pp = pprint.PrettyPrinter(indent=4)
pp.pprint(alarms)
[Referenz] [Python 2.7] Die Standardausgabe eines Objekts, das Japanisch als Element enthält, kann als japanische Zeichenfolge im Druckformat (pp (Objekt)) ausgegeben werden. / 4a5d6f1f0a23e787bc34)
inspect Eine Funktion, die eine Liste von Objektattributen als Paar aus Name und Inhalt zurückgibt
import inspect
print(inspect.getmembers(alarms))
pip.conf Bei der Installation von pip.conf unterscheidet sich der Speicherort je nach Betriebssystem.
Referenz: https://pip.pypa.io/en/stable/user_guide/#configuration
OS | path |
---|---|
MacOS | $HOME/.pip/pip.conf |
Unix | $HOME/.pip/pip.conf |
Windows | %HOME%\pip\pip.ini |
Pyenv unter Unix-Bei der Einstellung für jede virtuelle Umgebung | ~/.pyenv/versions/[venv_name]/pip.conf |
Pyenv auf dem Mac-Bei der Einstellung für jede virtuelle Umgebung | /usr/local/opt/pyenv/versions/[venv_name]/pip.conf |
" virtualenv | ~/.virtualenvs/[venv_name]/pip.conf |
Dockerfile
From centos:7
# parameters
ARG PY_VER='3.7.1'
# python
WORKDIR /src
RUN curl -L https://www.python.org/ftp/python/${PY_VER}/Python-${PY_VER}.tgz -o /src/Python-${PY_VER}.tgz
RUN tar zxfv Python-${PY_VER}.tgz
RUN yum -y install make zlib tk-devel tcl-devel ncurses-devel gdbm-devel db4-devel readline-devel zlib-devel \
bzip2-devel sqlite-devel openssl-devel libXext.x86_64 libSM.x86_64 libXrender.x86_64 gcc gcc-c++ libffi-devel python-devel patch bzip2
WORKDIR /src/Python-${PY_VER}
RUN ./configure --enable-unicode=ucs4 --prefix=/usr/local --enable-optimizations
RUN make && make altinstall
RUN ln -s /usr/local/bin/python3 /usr/local/bin/python
# pip
RUN curl -L https://bootstrap.pypa.io/get-pip.py -o /src/get-pip.py
WORKDIR /src
RUN python get-pip.py
Recommended Posts