為什么是 Python -m
python -m 和 python 的區(qū)別
-m 的含義表示將庫(kù)當(dāng)作腳本來(lái)執(zhí)行。
python file.py
正常的執(zhí)行Python腳本似乎都是這個(gè)樣子,甚至于有些小伙伴根本不曉得 -m 是個(gè)什么玩意。
在help 中對(duì) -m 的解釋為: 將文件看作腳本來(lái)執(zhí)行。
什么叫當(dāng)成腳本來(lái)執(zhí)行呢?我們來(lái)看看
編寫(xiě)簡(jiǎn)單的測(cè)試腳本 bar.py
import sys print(’sys.path len is %s.’ % sys.path.__len__())for path in sys.path: print(path)
然后分別執(zhí)行看結(jié)果
python -m bar # bar !??!不是 bar.py 坑?。?!
由此,第一行也就是最后添加進(jìn)來(lái)的環(huán)境變量是空,空 代表的含義是當(dāng)前文件夾。也就是你命令執(zhí)行的目錄
python bar.py
第一行為絕對(duì)路徑,文件所在的目錄。而不是腳本執(zhí)行的目錄。
注意
1 -m 參數(shù) 后面 不能跟 .py 相當(dāng)于 import bar
2 -m 支持 . 語(yǔ)法 python -m http.server 啟動(dòng) 一個(gè)web服務(wù)器
PS:下面看下python -m的含義
1.簡(jiǎn)單說(shuō)就是:執(zhí)行某個(gè)模塊下的文件
2.python -m后面參數(shù)的形式是模塊名.文件名
可以將模塊以腳本的方式運(yùn)行。和python file.py的運(yùn)行方式區(qū)別來(lái)看。
使用這個(gè)命令會(huì)在library path中搜索執(zhí)行py文件,而不是只在current library。
3.在python參數(shù)說(shuō)明中的解釋為:
run library module as a script.
總結(jié)
到此這篇關(guān)于為什么是 Python -m的文章就介紹到這了,更多相關(guān)python -m 和 python 的區(qū)別內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. Python實(shí)現(xiàn)迪杰斯特拉算法過(guò)程解析2. Python如何進(jìn)行時(shí)間處理3. 詳解Python模塊化編程與裝飾器4. python使用ctypes庫(kù)調(diào)用DLL動(dòng)態(tài)鏈接庫(kù)5. Python中l(wèi)ogger日志模塊詳解6. html小技巧之td,div標(biāo)簽里內(nèi)容不換行7. 以PHP代碼為實(shí)例詳解RabbitMQ消息隊(duì)列中間件的6種模式8. python裝飾器三種裝飾模式的簡(jiǎn)單分析9. python web框架的總結(jié)10. Python 日期與時(shí)間轉(zhuǎn)換的方法
