使用 PyCharm 創(chuàng)建與管理項(xiàng)目
在上一節(jié)我們使用 PyCharm 創(chuàng)建了一個(gè)簡單的 demo 項(xiàng)目,至此,我們已經(jīng)對項(xiàng)目有了一個(gè)初步的認(rèn)知。那么,到底什么是項(xiàng)目?有哪些項(xiàng)目類型?PyCharm 支持哪些項(xiàng)目類型?如何使用 PyCharm 管理項(xiàng)目?這一節(jié)我們將詳細(xì)介紹。
1. 項(xiàng)目(Project)概念
無論在 PyCharm 中做什么,都會在項(xiàng)目的上下文中執(zhí)行。項(xiàng)目是表示完整軟件解決方案的組織單位。主要作用就是起到一個(gè)項(xiàng)目定義、范圍約束、規(guī)范類型的效果,這個(gè)概念聽著有些拗口?,F(xiàn)在我們可以簡單地把項(xiàng)目理解為是一個(gè)單純的目錄。
2. 項(xiàng)目文件
當(dāng)你創(chuàng)建一個(gè)新的項(xiàng)目,PyCharm 會自動生成一個(gè) .idea
文件夾。這個(gè)文件夾的主要作用在于存放項(xiàng)目的控制信息,包括版本信息,歷史記錄等等。
.idea
目錄在項(xiàng)目視圖中是不可見的的, 如果要看到 .idea
目錄的內(nèi)容,可以選擇 “Project” 工具欄, 點(diǎn)擊下右側(cè)的箭頭, 選擇 Project Files:
下面是 .idea
目錄中的內(nèi)容:
我們分別來看下這幾個(gè)文件都有哪些作用:
- .iml 文件:描述項(xiàng)目結(jié)構(gòu);
- workspace.xml 文件:包含與工作區(qū)相關(guān)的參數(shù)與選項(xiàng);
- xml 文件:每個(gè) xml 文件負(fù)責(zé)其自己的設(shè)置集,可以通過其名稱識別:projectCodeStyle.xml、encoding.xml、vcs.xml 等等。
Tips:
.idea
目錄中的所有設(shè)置文件都應(yīng)置于版本控制之下,但存儲本地信息的 workspace.xml 除外。workspace.xml 文件應(yīng)標(biāo)記為忽略。(具體方法會在版本控制的章節(jié)詳細(xì)說明)
3. 項(xiàng)目類型
針對不同的項(xiàng)目類型,PyCharm 會自動生成一系列的項(xiàng)目文件、庫及 .idea
目錄。在創(chuàng)建新項(xiàng)目的界面中,可以看到以下的項(xiàng)目類型,這些項(xiàng)目類型都是 PyCharm 所支持的:
下面介紹主要的幾種項(xiàng)目類型:
-
Pure Python:用于純 Python 編程。此類項(xiàng)目的目錄結(jié)構(gòu)包含特定于 PyCharm 的設(shè)置、項(xiàng)目文件、庫以及
.idea
目錄。需要提前安裝 Python,上節(jié)課我們創(chuàng)建的 demo 就是一個(gè) Pure Python 項(xiàng)目。 -
Django:此項(xiàng)目類型提供 Django 應(yīng)用程序的特定基礎(chǔ)結(jié)構(gòu)以及所有必要的文件和設(shè)置。使用 Django 應(yīng)用程序需要數(shù)據(jù)庫,IDE 已經(jīng)預(yù)配置了 SQLite,如果使用其他數(shù)據(jù)庫引擎,需要提前安裝并配置正確。
-
Flask:此項(xiàng)目類型提供 Flask 應(yīng)用程序的特定基礎(chǔ)結(jié)構(gòu)以及所有必要的文件和設(shè)置。
-
Google App Engine:此項(xiàng)目類型提供 Google 應(yīng)用程序引擎應(yīng)用程序的特定基礎(chǔ)結(jié)構(gòu),以及所有必要的文件和設(shè)置。
-
客戶端項(xiàng)目:HTML5 Boilerplate, Bootstrap, and Foundation 都屬于客戶端項(xiàng)目。 對于客戶端應(yīng)用程序,PyCharm 創(chuàng)建特定的基礎(chǔ)結(jié)構(gòu),并帶有所需的文件和目錄。
4. 創(chuàng)建項(xiàng)目
4.1 創(chuàng)建新項(xiàng)目
在 PyCharm 的主界面中依次點(diǎn)擊: File -> New Project
:
來到 Welocme to PyCharm 窗口, 選擇 Create New Project
:
4.2 導(dǎo)入項(xiàng)目從源文件
-
在 PyCharm 的主界面中依次點(diǎn)擊:
File -> Open
; -
在打開的對話框中,選擇包含所需源代碼的目錄;
-
選定要打開的項(xiàng)目之后單擊右下角的 “Open” 按鈕;
-
在彈出的窗口中指定是在單獨(dú)的窗口中打開新項(xiàng)目,還是關(guān)閉當(dāng)前項(xiàng)目并在當(dāng)前窗口打開。
5. 管理項(xiàng)目
5.1 項(xiàng)目配置
項(xiàng)目配置最主要包括配置項(xiàng)目結(jié)構(gòu)與解釋器, 項(xiàng)目結(jié)構(gòu)定義了整個(gè)項(xiàng)目包含文件, 解釋器指定了程序運(yùn)行依賴的python 環(huán)境是什么。正確的配置上述兩項(xiàng),才能保證程序的正常運(yùn)行。具體如何配置,后續(xù)有單獨(dú)的章節(jié)詳細(xì)介紹。
Mac 系統(tǒng)依次點(diǎn)擊:PyCharm -> Preferences
;
Windows and Linux 系統(tǒng)依次點(diǎn)擊:File -> Settings
;
Tips:有紅色框中圖標(biāo)標(biāo)記的設(shè)置僅適用于當(dāng)前項(xiàng)目。其他設(shè)置是全局的,適用于所有現(xiàn)有項(xiàng)目。
除此以外, 不僅可以為當(dāng)前項(xiàng)目配置設(shè)置,還可以為以后將創(chuàng)建的所有項(xiàng)目配置項(xiàng)目設(shè)置:File -> New Projects Settings -> Preferences for New Projects
。
5.2 打開項(xiàng)目
可以從 Welocme to PyCharm 窗口打開項(xiàng)目, 可以直接選擇 Open
。除此以外, PyCharm 保留最近項(xiàng)目的歷史記錄列表,您可以從左側(cè)列表選擇所需的項(xiàng)目打開。
也可以通過主菜單 File -> Open Recent
打開項(xiàng)目。
PyCharm 是允許同時(shí)打開多個(gè)項(xiàng)目的, 當(dāng)你已經(jīng)打開一個(gè)項(xiàng)目,然后再打開另外一個(gè)項(xiàng)目, 會有下面的彈窗。
New Window and This Window:
每個(gè)項(xiàng)目都在其自己的窗口中打開。項(xiàng)目是獨(dú)立的,不能共享信息,但剪貼板操作除外。所有項(xiàng)目都在同一個(gè) PyCharm 實(shí)例中運(yùn)行,并使用相同的內(nèi)存空間。
Attach:
新打開的項(xiàng)目與已打開的窗口共享同一窗口。已打開的項(xiàng)目被視為主項(xiàng)目,并且始終首先顯示在"項(xiàng)目"工具窗口中。所有其他項(xiàng)目都添加到主項(xiàng)目中。如圖所示:
5.3 關(guān)閉項(xiàng)目
通過主菜單 File -> Close Project
。
當(dāng)只有一個(gè)打開的項(xiàng)目并關(guān)閉它時(shí),PyCharm 將顯示 Welcome
界面。如果有多個(gè)項(xiàng)目被打開,PyCharm 只會關(guān)閉當(dāng)前的項(xiàng)目。
另外, 如果要在一個(gè)窗口中分離已附加到主項(xiàng)目的任何項(xiàng)目,只需從"項(xiàng)目視圖"中刪除目標(biāo)項(xiàng)目。"Project"工具窗口, 要刪除項(xiàng)目右鍵單擊,選擇 Remove from Project View
:
5.4 項(xiàng)目之間切換
PyCharm 是允許在不同窗口打開多個(gè)項(xiàng)目的,如何在多個(gè)打開項(xiàng)目中切換呢?使用下面的命令:
Window -> Next Project Window
Window -> Previous Project Window
5.5 清除緩存
PyCharm 緩存了大量文件,長時(shí)間運(yùn)行下來,數(shù)據(jù)量是很大的,也比較占用系統(tǒng)資源。所以在某些情況下我們需要清除緩存 。例如,一個(gè)短期項(xiàng)目結(jié)束將來不再使用;解決某些沖突的唯一方法也是通過清除緩存。File -> Invalidate Caches/Restart
Tips:通知緩存將在下一個(gè)啟動時(shí)失效并重新生成。使用對話框中的按鈕使緩存無效、重新啟動 PyCharm 或兩者兼而有之。
6. 小結(jié)
本小節(jié)主要介紹項(xiàng)目、項(xiàng)目文件以及項(xiàng)目類型的基本概念,也學(xué)習(xí)了如何創(chuàng)建新項(xiàng)目以及常用針對項(xiàng)目的操作。建議大家按照上面的說明與步驟實(shí)際操作一下,熟悉菜單的位置及對應(yīng)的功能,并加深理解。