⑴ 如何管理python項目
Virtual Environments
首先Python似乎沒有類似Maven/Ant這樣的項目管理工具。那麼當一台機器上有多個python項目,且這些python項目各自有不同的依賴,不想互相干擾時怎麼辦呢?
官方做法是使用Virtual Environments將每個項目互相隔離開。一般情況下,我們使用python解釋器運行python腳本或mole:
>python myScript.py
運行的目錄就是安裝的python解釋器,即python.exe所在的目錄。而Virtual Environments就是給每個項目都生成一個項目獨有的目錄,這個目錄里包含python解釋器,python標准類庫和其他各式各樣的必要文件。這樣每個項目就可以使用不同的解釋器和類庫,且互不幹擾。
創建過程也很簡單。首先找到pyvenv.py所在的目錄,這個文件通常在安裝目錄的自目錄\Tools\scripts下。這是一個生成Virtual Environments的工具。然後運行:
>pyvenv tutorial-env
運行後就會生成一個名為「tutorial-env」的目錄。找到這個目錄,可以發現正如官網所說,這個目錄包含運行python項目所必須的一切文件。使用在各自Virtual Environments目錄里包含的解釋器來運行特定的python項目就可以了。同時,對於那些每個項目使用的特定的依賴(packages或mole),則加入到各自Virtual Environments目錄的類庫子目錄中就可以了。這里需要注意的是。創建完Virtual Environments後,還需要激活。做法很簡單,在上例tutorial-env目錄下執行下的命令即可:
>tutorial-env/Scripts/activate
PIP
PIP是官方提供的安裝python第三方類庫(packages/mole)的工具。它可以去PPI(python packages index)查找或下載第三方類庫。網址是:https://pypi.python.org/pypi
找到上例Virtual Environments目錄下的pip.exe並運行:
>pip install lib_name
即可安裝,其他功能請自行查看手冊。如果是在python的安裝目錄下運行pip,則類庫可以被非Virtual Environments的所有項目使用。PIP安裝的其實是package。
Requirements.txt
在Virtual Environments目錄下運行:
>pip freeze > requirements.txt
可以生產一個當前項目所有依賴類庫及其版本的list文件,文件名就是requirements.txt(當然也可以用別的名字)。文件內容大致如下:
novas==3.1.1.3
numpy==1.9.2
requests==2.7.0
使用requirements.txt的好處就是:
The requirements.txt can then be committed to version control and shipped as part of an application. Users can then install all the necessary packages with 「install -r「:
>pip install -r requirements.txt
這樣就可以方便的管理項目依賴了。如果不使用requirements.txt,直接使用version control存儲Virtual Environments目錄,其他程序員直接下載該目錄就可以開始項目開發的做法也可以。
⑵ python怎麼導入同一包的模塊
一、何為模塊
1.一個模塊就是一個包含了python定義和聲明的文件,文件名就是模塊名字加上.py的後綴。
2.模塊目的和函數,對象等一樣,是為了代碼的復用性而存在的。即一個py程序寫了很多功能,也可以被其他py程序調用。被調用後被作為模塊,此時會產生一個pyc的文件即為這個模塊的緩存文件,相當於編譯了模塊文件使該py模塊被調用的速度變快。一個大的項目一個人肯定是不行的,所以模塊也為程序員相互間的合作提供了便利。
二、模塊妙用
1.import
只需要在py程序開頭加上import 文件名(不能有.py後綴)。例如,模塊的文件名是span.py,那麼只需在自己的py程序加import span。
2. import可以在程序的任意位置調用,但一次調用後會駐留內存,下次再調用會直接調用內存中的模塊(python的優化)。
3.個模塊都是一個獨立的名稱空間,定義在這個模塊中的函數,把這個模塊的名稱空間當做全局名稱空間,這樣我們在編寫自己的模塊時,就不用擔心我們定義在自己模塊中全局變數會在被導入時,與使用者的全局變數沖突。
print('from the spam.py')
money=1000def read1(): print('spam->read1->money',1000)def read2(): print('spam->read2 calling read')
read1()def change(): global money
money=0
支持tab自動補全
⑶ 如何在python3中正確導入同一目錄下的模塊
因為要absolute_import,這樣import webchat_sdk.basic應該沒問題了。
在 Python 2 裡面可以使用 import foo來導入相同目錄包下的模塊foo,在 Python 3 裡面就是導入的項目根目錄(最上層有__init__.py的目錄)包foo。 也就是說 Python 3 默認就是絕對導入的,import .foo只是相對於絕對導入來說的,並不是相對導入。
⑷ 為什麼在用eclipse導入python源代碼說noprojec
在用eclipse導入python源代碼說noprojec
已有的python項目導入eclipse的步驟:
1、首先,打開Eclipse集成開發程序,在菜單欄上點擊「File(F)」,咋彈出來的列表中點擊「導入(I)...」。
2、在彈出來的「導入」窗口中,選擇「常規」選項中的「現有項目到工作空間」,然後點擊「下一步(N)」按鈕。
3、進入到「導入項目」界面,選擇要導入Eclipse項目的根目錄,然後點擊「完後(F)」按鈕。
4、可以在Eclipse「Java透視圖」的「包資源管理器」中看到剛才導入的項目。
⑸ python中怎麼調用另一個程序
python中怎麼調用另一個程序?
1、自身函數調用:
自身函數的調用時相當方便的,在定義好了函數以後直接按定義的格式調用即可,出現的錯誤為參數數量不匹配,如:TypeError: func() missing 1 required positional argument: 's',意思為func()函數有一個形式參時但是沒有傳入相對應的實參值。
2、通過包或模塊調用:
通過包或模塊調用相對自身函數調用比較復雜,需要提前導入包或模塊,常用的方法為import 或者from import,導入成功的前提是對應的包或模塊在python路徑之下,可以通過sys.path(sys為系統內置模塊可以直接使用import sys導入)來查看python路徑。以導入第三方包文件requests為例。
3、通過類方法調用:
通過類方法的調用需要在調用之前,實例化一個類對象,通過這個類對象來調用類方法,
注意第三個方法為私有方法,不允許類外部訪問。
⑹ 如何在eclipse中運行python工程
安裝pydev插件
http://pydev.org/
最喜歡這種好解的問題了
⑺ 怎麼在wing里導入python工程
如圖所示,在Project標簽中,Open Project即可導入新項目。
⑻ eclipse+pydev 怎麼導入已有的python項目
已有的python項目導入eclipse的步驟:
1、首先,打開Eclipse集成開發程序,在菜單欄上點擊「File(F)」,咋彈出來的列表中點擊「導入(I)...」。
⑼ 同事拷貝給我一個python文件夾,裡面有項目需要的各種庫,超多,我要怎樣安裝在我電腦上
先安裝個帶pip的python版本,再用pip install 庫名 這條命令在cmd裡面運行安裝所需的庫。