今日內容
https://www.cnblogs.com/pyyu/p/9015317.html 今日內容博客地址
1.編譯安裝python3
1.下載python3的源碼
cd /opt
yum install wget -y 安裝wget命令
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
1.安裝python3之前,環境依賴解決
通過yum安裝工具包,自動處理依賴關系,每個軟件包通過空格分割
提前安裝好這些軟件包,日后就不會出現很多坑
得保證這些依賴工具包,正確安裝
yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y
2.解壓縮源碼包
下載好python3源碼包之后
Python-3.6.2.tgz
解壓縮、
tar命令可以解壓縮 tgz格式
tar -xvf Python-3.6.2.tgz
3.切換源碼包目錄
cd Python-3.6.2
4.編譯且安裝
1.釋放編譯文件makefile,這makefile就是用來編譯且安裝的
./configure --prefix=/opt/python36/
--prefix 指定軟件的安裝路徑
2. 開始編譯python3
make
3.編譯且安裝 (只有在這一步,才會生成/opt/python36)
make install
4.配置python3.6的環境變量
1.配置軟連接(注意,這個和PATH配置,二選一)
ln -s 目標文件 軟連接文件
ln -s /opt/python36/bin/python3.6 /usr/bin/python3
此時還沒有pip
ln -s /opt/python36/bin/pip3 /usr/bin/pip3
2.配置path環境變量 (二選一即可)
echo $PATH查看環境變量
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
#這個變量賦值操作,只是臨時生效,需要寫入到文件,永久生效
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/python36/bin
#linux有一個全局個人配置文件
編輯這個文件,在最底行寫入PATH
vim /etc/profile
寫入
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/python36/bin
保存退出
讀一下這個/etc/profile 使得生效
source /etc/profile
5.測試linux安裝一個django,
pip3 install django
6.創建django項目
django-admin startproject mysite
7.創建django的APP應用
django-admin startapp app01
8.編寫視圖函數,測試一個index視圖
9.注意修改settings.py的allow_hosts,windows方可訪問linux的django項目
yum工具
yum install nginx -y
如果你用yum命令,提示yum進程被鎖定,無法使用
解決辦法: ps -ef|grep yum 進程,這是說 有另一個進程也在用yum
yum只能有一個進程使用
python
單擊測試,mac,運行一個hello world
吞吐量
django 600
flask 1000+
tornado 異步非阻塞的框架 1800+
sanic 2800+ uvloop事件驅動 用在游戲接口領域
go
net/http web服務器 6W+
python的虛擬環境 virtualenv
1.需求在linux服務器上,既可以有django2.0環境,也能運行django1.11.11環境
思路:
1.django2.0想要運行,我們得准備python解釋器+pip3軟件包管理
2.還想運行django1.11.11 python解釋器+pip3
- 在編譯安裝一個python3.6???????
- pip3安裝的模塊,都放在/opt/python36/lib/python3.6/site-packages
virtualenv 就是一個虛擬解釋器
就是基於物理環境下的python解釋器,虛擬/分身 出的 多個解釋器
venv1
django2.0
venv2
django1.1
venv3
flask
venv4
requests
scrapy
安裝virtualevn
1.下載virtualenv工具
通過物理環境的pip工具安裝
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv
安裝完成后你的linux就多了一個virtualenv命令
2.創建虛擬環境venv1 venv2
virtualenv --no-site-packages --python=python3 s15venv1
調用虛擬環境的命令
--no-site-packages 這是構建干凈,隔離的模塊的參數
--python=python3 這個參數是指定虛擬環境以哪一個物理解釋器為基礎的
最后一個是虛擬環境的名字 會創建這么一個文件夾
3.進入虛擬環境目錄,激活虛擬環境
找到你的虛擬環境目錄bin地下的activate文件
source myenv/s15venv1/bin/activate
-
激活虛擬環境,原理就是修改了PATH變量,path是有順序執行的
echo $PATH 檢查環境變量
which python3
which pip3 檢查虛擬環境是否正常
4.測試安裝2個虛擬環境,venv1,venv2,並且運行2個django不同版本的項目
5.退出虛擬換的命令
deactivate
vim編輯器,
vimer
vim程序員
保證本地開發環境和線上一致性的操作
解決方案:
1.通過命令保證環境的一致性,導出當前python環境的包
pip3 freeze > requirements.txt
這將會創建一個 requirements.txt 文件,其中包含了當前環境中所有包及 各自的版本的簡單列表。
可以使用 “pip list”在不產生requirements文件的情況下, 查看已安裝包的列表。
2.上傳至服務器后,在服務器下創建virtualenv,在venv中導入項目所需的模塊依賴
pip3 install -r requirements.txt
虛擬環境管理工具virtualenvwrapper
1.安裝這個命令,必須得在物理解釋器地下,注意!!
pip3 install virtualenvwrapper
1.1
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意 ,請看這里
注意這里path的配置,需要將物理解釋器的python,放在path最前面
echo $PATH
這里保持配置和我一樣,將python3放在最前面
[root@localhost ~]# echo $PATH
/opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin
2.修改環境變量,每次開機就加載這個virtualenvwrapper工具
vim ~/.bashrc #vim編輯用戶家目錄下的.bashrc文件,這個文件是用戶在登錄的時候,就讀取這個文件
#export 是讀取shell命令的作用
#這些變量根據你自己的絕對路徑環境修改
export WORKON_HOME=~/Envs #設置virtualenv的統一管理目錄
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' #添加virtualenvwrapper的參數,生成干凈隔絕的環境
export VIRTUALENVWRAPPER_PYTHON=/opt/python347/bin/python3 #指定python解釋器
source /opt/python34/bin/virtualenvwrapper.sh #執行virtualenvwrapper安裝腳本
3.重新登錄會話,使得這個配置生效
logout
ssh ....
4.此時正確的話 virtualenvwrapper工具已經可以使用
提供了哪些命令?
mkvirtualenv 虛擬環境名 #自動下載虛擬環境,且激活虛擬環境
workon 虛擬環境名 #激活虛擬環境
deactivate 退出虛擬環境
rmvirtualenv 刪除虛擬環境
cdvirtualenv 進入當前已激活的虛擬環境所在的目錄
cdsitepackages 進入當前激活的虛擬環境的,python包的目錄
管理python虛擬環境的工具virtualenvwrapper