免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
python筆記41-虛擬環(huán)境virtualenv

前言

如果你是一個(gè)python初學(xué)者,我是不建議你搞python虛擬環(huán)境的,我看到很多python的初學(xué)者同學(xué),使用最新版的pycharm,新建一個(gè)工程時(shí)候默認(rèn)就是venu虛擬環(huán)境。
然后在使用cmd里面pip安裝第三方包的時(shí)候,在工程里面死活導(dǎo)入不成功,搞的開始懷疑人生。(你給他講這是虛擬環(huán)境venu,他會(huì)一臉懵逼!)

那么什么情況下會(huì)用到虛擬環(huán)境呢?

如果你已經(jīng)使用python寫了一個(gè)項(xiàng)目的自動(dòng)化測試代碼了,然后你開始寫第二個(gè)項(xiàng)目,第三個(gè)項(xiàng)目。。。。當(dāng)你寫的項(xiàng)目越來越多時(shí)候,
你會(huì)發(fā)現(xiàn)python使用pip安裝的第三方包會(huì)越來越多,并且你會(huì)在安裝第三方包的時(shí)候踩坑,比如不同的python版本匹配不同的pytest包,或者django1和django2差異又很大。
這時(shí)候你會(huì)發(fā)現(xiàn)我需要同時(shí)安裝2個(gè)版本的包,對(duì)比差異性,或者同時(shí)開發(fā)多個(gè)項(xiàng)目,很顯然一套環(huán)境已經(jīng)不能滿足我們的需求了。

于是需要有多套python環(huán)境,也就是需要學(xué)會(huì)使用虛擬環(huán)境了!virtualenv在windows和linux上安裝是有一些差異的。

windows安裝virtualenv

virtualenv 是用來創(chuàng)建 Python 的虛擬環(huán)境的庫,虛擬環(huán)境能夠獨(dú)立于真實(shí)環(huán)境存在,并且可以同時(shí)有多個(gè)互相獨(dú)立的 Python 虛擬環(huán)境,
每個(gè)虛擬環(huán)境都可以營造一個(gè)干凈的開發(fā)環(huán)境,對(duì)于項(xiàng)目的依賴、版本的控制有著非常重要的作用。

虛擬環(huán)境有什么意義?

打個(gè)比喻,你正在使用django2.1開發(fā)一個(gè)項(xiàng)目,這時(shí)候你看到github上有個(gè)開源的django項(xiàng)目,但是是基于django1.8寫的,在你本機(jī)環(huán)境運(yùn)行會(huì)有問題。
那我總不能把現(xiàn)在的卸載,重新安裝一個(gè)吧,那會(huì)影響你開發(fā)的代碼,于是,這個(gè)問題就可以使用一個(gè)虛擬環(huán)境來解決。
使用 virtualenv 來創(chuàng)建一個(gè)只給這個(gè)項(xiàng)目運(yùn)行的開發(fā)環(huán)境,既可以保證項(xiàng)目的正常運(yùn)行,也方便了之后移植項(xiàng)目。

安裝 virtualenv 跟安裝一般的 Python 庫是一樣的操作,直接使用 pip 命令就行了

pip install virtualenv

C:\Users\dell>pip install virtualenv
Collecting virtualenv
Downloading https://files.pythonhosted.org/packages/f7/69/1ad2d17560c4fc60170056dcd0a568b83f3453a2ac91155af746bcdb9a07/virtualenv-16.7.4-py2.py3-none-any.whl (3.3MB)
|████████████████████████████████| 3.3MB 364kB/s
Installing collected packages: virtualenv
Successfully installed virtualenv-16.7.4

安裝完成后使用virtualenv —version查看版本

C:\Users\dell>virtualenv --version
16.7.4

創(chuàng)建虛擬環(huán)境

安裝成功之后,我們就可以創(chuàng)建虛擬環(huán)境了:virtualenv project_name,比如我要在d盤的soft目錄下創(chuàng)建一個(gè)python的虛擬環(huán)境名稱為py36_yoyo

virtualenv py36_yoyo

D:\soft>virtualenv py36_yoyo
Using base prefix 'e:\\python36'
New python executable in D:\soft\py36_yoyo\Scripts\python.exe
Installing setuptools, pip, wheel...
done.

從上面運(yùn)行日志看出,它是基于我e盤里面的python36版本拷貝的一個(gè)虛擬環(huán)境,也就是之前pip是哪個(gè)python環(huán)境安裝的,那虛擬環(huán)境默認(rèn)就是這個(gè)python的環(huán)境。

激活虛擬環(huán)境

虛擬環(huán)境已經(jīng)創(chuàng)建好了,那我們?nèi)绾渭せ钍褂媚??cd到py36_yoyo下的Scripts目錄,里面有個(gè)activate.bat文件直接輸入activate指令激活

D:\soft\py36_yoyo>cd Scripts

D:\soft\py36_yoyo\Scripts>dir
2019/08/28 23:30 <DIR> .
2019/08/28 23:30 <DIR> ..
2019/08/28 23:30 2,299 activate
2019/08/28 23:30 872 activate.bat
2019/08/28 23:30 1,755 activate.ps1
2019/08/28 23:30 1,151 activate.xsh
2019/08/28 23:30 1,517 activate_this.py
2019/08/28 23:30 512 deactivate.bat
2019/08/28 23:30 102,775 easy_install-3.6.exe
2019/08/28 23:30 102,775 easy_install.exe
2019/08/28 23:30 102,757 pip.exe
2019/08/28 23:30 102,757 pip3.6.exe
2019/08/28 23:30 102,757 pip3.exe
2019/08/28 23:28 100,504 python.exe
2019/08/28 23:28 52,888 python3.dll
2019/08/28 23:28 3,555,992 python36.dll
2019/08/28 23:28 98,968 pythonw.exe
2019/08/28 23:30 102,753 wheel.exe

D:\soft\py36_yoyo\Scripts>activate

(py36_yoyo) D:\soft\py36_yoyo\Scripts>

當(dāng)看到前面出現(xiàn)(py36_yoyo)說明進(jìn)入了虛擬環(huán)境了,接著就可以使用里面的pip安裝第三方包了,如安裝pytest環(huán)境

(py36_yoyo) D:\soft\py36_yoyo\Scripts>pip install pytest==3.6.3

安裝成功后接下來就可以寫一段pytest的測試代碼測試是否成功了

pytest代碼運(yùn)行

新建一個(gè)test_h.py文件,寫入pytest測試腳本

import pytest

# ** 作者:上海-悠悠 QQ交流群:717225969**
def test_one():
print("正在執(zhí)行----test_one")
x = "this"
assert 'h' in x

def test_two():
print("正在執(zhí)行----test_two")
x = "hello"
assert x

def test_three():
print("正在執(zhí)行----test_three")
a = "hello"
b = "hello world"
assert a in b

if __name__ == "__main__":
pytest.main(["-s", "test_h.py"])

運(yùn)行結(jié)果

(py36_yoyo) D:\soft\py36_yoyo\Scripts>pytest -s D:\soft\test_h.py
================================================= test session starts =================================================
platform win32 -- Python 3.6.0, pytest-3.6.3, py-1.8.0, pluggy-0.6.0
rootdir: D:\soft, inifile:
collected 3 items

..\..\test_h.py 正在執(zhí)行----test_one
.正在執(zhí)行----test_two
.正在執(zhí)行----test_three
.

============================================== 3 passed in 0.06 seconds ===============================================

(py36_yoyo) D:\soft\py36_yoyo\Scripts>

使用deactivate退出虛擬環(huán)境

deactivate

當(dāng)一個(gè)項(xiàng)目開發(fā)完成后,所需要的依賴包可以用上一篇講到的freeze導(dǎo)出依賴包python筆記40-環(huán)境遷移freeze生成requirements.txt

linux上虛擬環(huán)境

linux上的虛擬環(huán)境使用和window上有一點(diǎn)點(diǎn)差異,大體上差不多。linux上默認(rèn)的是python2.7環(huán)境,如果想使用python3.6的虛擬環(huán)境,可以把python3.6的Script里面的pip3設(shè)置軟連接。
然后使用pip3安裝virtualenv

pip3 install virtualenv

[root@yoyo ~]# pip3 install virtualenv
Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Collecting virtualenv
Downloading http://mirrors.aliyun.com/pypi/packages/f7/69/1ad2d17560c4fc60170056dcd0a568b83f3453a2ac91155af746bcdb9a07/virtualenv-16.7.4-py2.py3-none-any.whl (3.3MB)
|████████████████████████████████| 3.3MB 2.3MB/s
Installing collected packages: virtualenv
Successfully installed virtualenv-16.7.4
[root@yoyo ~]# virtualenv --version
-bash: virtualenv: command not found

如果使用virtualenv —version查看版本號(hào)顯示-bash: virtualenv: command not found,那就找到virtualenv,添加軟連接

[root@yoyo ~]# find / -name virtualenv
/var/lib/docker/overlay2/458b85f365c18adb23606b6011c10c3af1e03babe3a7e7d839a12ee90f3d2bc2/diff/opt/rh/rh-python36/root/usr/bin/virtualenv
/usr/local/python3/bin/virtualenv

[root@yoyo ~]# ln /usr/local/python3/bin/virtualenv /usr/bin

接著創(chuàng)建虛擬環(huán)境,venv是虛擬環(huán)境名稱,可以取任意名稱

virtualenv —no-site-packages venv

[root@yoyo ~]# virtualenv --no-site-packages venv
Using base prefix '/usr/local/python3'
New python executable in /root/venv/bin/python3.6
Also creating executable in /root/venv/bin/python
Please make sure you remove any previous custom paths from your /root/.pydistutils.cfg file.
Installing setuptools, pip, wheel...
done.

激活虛擬環(huán)境cd到/venv/bin/目錄,執(zhí)行source activate激活虛擬環(huán)境

[root@yoyo ~]# cd ./venv/bin/
[root@yoyo bin]# source activate
(venv) [root@yoyo bin]#

退出虛擬環(huán)境使用deactivate

(venv) [root@yoyo bin]# deactivate
[root@yoyo bin]#


2019第一期《python測試開發(fā)》課程,10月13號(hào)開學(xué)!

課程主要涉及的內(nèi)容:
1.httprunner框架以及web平臺(tái)做接口自動(dòng)化測試 (裝逼必備)
2.django平臺(tái)開發(fā) (python測試開發(fā)必會(huì))
3.pytest框架結(jié)合selenium做web自動(dòng)化測試 (鄙視unittest框架)
4.docker學(xué)習(xí)(加分項(xiàng))
5.mockserver環(huán)境搭建(加分項(xiàng))

課表詳情,百度搜:上海悠悠博客

https://www.cnblogs.com/yoyoketang/p/11421588.html

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
使用virtualenv在ubuntu上搭建python 3開發(fā)環(huán)境
[接口測試_B] 01 接口測試環(huán)境搭建
Ubuntu16.04下安裝pip
從零開始用 Flask 搭建一個(gè)網(wǎng)站(一)
pipenv使用教程
【新手向】為何要這樣安裝Django?
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服