如何在Windows下開發Python:在cmd下執行Python指令碼+如何使用Python Shell(command line模式和GUI模式)+如何使用Python IDE
本文目的
希望對於,如何在Windows下,寫Python程式碼,進行Python開發,執行Python指令碼的人,看了此文後,懂得了:
什麼是cmd下面去執行Python指令碼;
什麼是Python的互動式的shell;
什麼是Python的IDE。
前提知識
看此文之前,需要知道:
Python語言的基本知識
包括知道其程式碼就是普通文字等基礎知識
不瞭解的,可以先去看:
以瞭解關於計算機語言的巨集觀介紹;
再去看:
【整理】Python語言簡介
就明白了。
已經在Windows中安裝好了Python
【TODO:寫教程解釋如何安裝Python】
另外提示一下,關於版本的選擇:
【整理】總結Python2(Python 2.x版本)和Python3(Python 3.x版本)之間的區別
如何在Windows下開發Python(如何執行Python指令碼)
下面,通過最簡單的Python程式碼,此處只是列印一些Python版本資訊和系統資訊:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#!/usr/bin/python # -*- coding: utf-8 -*- """ Function: 【整理】如何在Windows下開發Python(如何執行Python指令碼) Author: Crifan Li Version: 2012-12-06 """ import platform;
pythonVersion
= platform.python_version();
uname = platform.uname();
print "Just for demo how to do python development under windows:" ; print "Current python version info is %s" % (pythonVersion); print "uname=" ,uname; |
來說明,如何在Windows下,進行Python開發。
Python的最原始的開發方式是什麼樣的
相對來說,最原始的,最基本的,開發Python的方式,只是:
找個文字編輯器,新建個.py檔案,寫上Python程式碼
Python程式碼,本身就只是文字;
所以,從原理上來說,只需要找個合適的文字編輯器,即可;
換句話說,如果只是簡單的寫寫幾行Python程式碼,你用Windows的記事本(Notepad),都是可以的;
只不過,由於Notepad功能太弱,所以在此個人推薦Notepad++。
關於Notepad++的內容,你想要的,幾乎所有的內容,都可以在這裡找到解釋:
【crifan推薦】輕量級文字編輯器,Notepad最佳替代品:Notepad++
此處呢,對應的就是:
用我所推薦的Notepad++,新建一個檔案,然後包括程式碼進入,存為對應的一個.py的檔案。
而關於如何操作,此處也一點點截圖,透徹的說明一下:
此處再次提示一下,一下Notepad++的所有功能,特性,用法,上面那個帖子中,都有專門的介紹。
想要更加詳細瞭解的相關的Notepad++的某個特定功能的用法的,自己去看即可。
下面的截圖,就不再事無鉅細的解釋Notepad++的功能特點了。只是截圖解釋如何操作而已。
開啟Notepad++後,點選新建,新建出一個新的檔案:
然後把上面給你們的程式碼,拷貝進去,就變成了:
此處由於是新建的空白檔案,所以Notepad++,不知道你是Python程式碼,沒法幫你自動實現語法高亮,
需要手動去設定一下:
語言->P->Python:
就可以看到Python程式碼的語法高亮的效果了:
然後去儲存到某個位置。
檔案->另存為:
在彈出的對話方塊中,輸入要儲存的檔名:demoRunPythonUnderWindows
提示:其中可以看到Notepad++自動幫你寫好了.py字尾,那是因為你之前設定了Python語法高亮。
然後再選擇對應的路徑去儲存:
提示:
我此處的路徑是:
E:\Dev_Root\python\how_to_dev_python\
你自己隨便,只是要注意,路徑中,不帶中文的。以避免各種中文路徑不識別等問題。
儲存好後,就是這樣的了:
開啟Windows的cmd,並且切換到對應的python指令碼所在目錄
方法1:手動開啟cmd,並cd到對應路徑
而對於,什麼是windows的cmd,如何開啟cmd,如何切換到對應的路徑等內容,不熟悉的話,可以去參考:
方法2:通過Notepad++的Open current dir cmd
此處,使用一個更方便的辦法,利用Notepad++中功能,直接開啟cmd,並切換到對應路徑:
然後就直接實現,開啟了cmd,並且切換到對應的當前檔案所在路徑了:
在cmd中去執行你的Python指令碼(.py檔案)
然後就是,在cmd中,輸入你的Python指令碼,即.py檔案的完整的檔名。
此處是:
demoRunPythonUnderWindows.py
小提示:
正常的是通過手動輸入對應的Python的完整的檔名,即,對於此處的demoRunPythonUnderWindows.py,一個個字母的輸入
不過,此處有個小技巧,可以利用Windows(和Linux中通用的)Tab鍵,然後會自動顯示出你當前目錄的檔案;
如果當前資料夾有多個檔案,多次按Tab鍵,會在多個檔案之間切換。此處就一個檔案,所以通過按Tab鍵,就可以一下子就顯示出對應的整個檔名了:
然後輸入回車,即可執行對應的Python指令碼,接著在cmd中也就可以看到輸出的結果了:
如此,就是一個,完整的,在windows的cmd中,執行Python指令碼的流程了。
而接下來,作為正常的開發Python的流程,就是,你繼續去修改你的Python程式碼,新增新的程式碼,然後儲存python檔案,
再回到cmd中,重新再次執行Python,以驗證程式執行是否正常,是否獲得了你所期望的結果。
如此反覆,一點點,由少到多,一點點寫出足夠複雜的Python程式碼,實現你的複雜的功能。
利用Python的shell進行互動式開發又是什麼樣的
Python有個shell,提供一個Python執行環境。方便你互動式開發。
即寫一行程式碼,就可以立刻被執行,然後方便檢視到結果。
而Python的Shell,在Windows環境下,又分兩種:
Python (command line) 和IDLE (Python GUI)
下面分別介紹一下。
命令列版本的Python Shell – Python (command line)
Windows下,安裝好Python後,你可以在開始選單中,找到對應的command line版本的Python Shell的:
其實,Win7中,有個更方便的方式,直接在搜尋框中搜python,即可找到:
開啟後,就是這個樣子的:
其中可以顯示出來對應的python版本資訊和系統資訊。
然後就是三個大於號>>>接下來,你就可以,像在之前所說的,普通文字中輸入python程式碼一樣,在此一行行輸入程式碼,然後就可以顯示對應的資訊了:
其中可以看到,當你輸入對應的,第一行print時,此處命令列(command line)版本的Python Shell中,就可以,動態的,互動式地,顯示出對應的資訊了。
正由於,此處可以,直接地,動態的,互動性式地,顯示出對應的資訊,所以,才被叫做Python 的互動式的Shell,簡稱Python Shell。
對應的,把前面的程式碼都輸入完畢,結果顯示為:
帶圖形介面的Python Shell – IDLE (Python GUI)
下面將要介紹的,同樣是Python的Shell,但是是相對於command line版本而言,是GUI,帶圖形介面的版本的。
對應的開啟方式,和上面類似,可以直接搜python而找到:
對應的,可以看到,其名字寫的是IDLE。
開啟後就是這樣的:
左上角的紅色圖示,好像是TK,是圖形介面庫的一種。
這個就是,很多Python教程中,所常用來作為Python的開發環境,教別人寫Python程式碼的那個IDLE。
對應的,輸入上述的程式碼,結果也是類似的:
關於(command line或GUI版本的)Python Shell的用途
而作為一般的Python開發的話,則很少有用這個Python Shell的,不論是command line的還是GUI版本的IDLE。
其比較適合用來測試,演示一些簡單的程式碼的執行的效果。
好處是很方便,可以立刻看到程式碼執行的結果。
所以,結論就是:
對於python的shell,不論是command line版還是GUI版,都比較適合偶爾要測試少量的Python程式碼的情況下去使用,而不適合長期的開發Python。
舉例:
比如我之前就是借用Python的一些庫函式,實現一些對於url解碼的功能:
【已解決】在用google搜尋出來的連結無法開啟的情況下,如何找到該連結的真實地址
利用第三方Python的IDE進行Python開發又是怎麼回事
關於IDE的基本概念,不瞭解的先去看:
即:
IDE
=整合開發環境
=把開發相關的各種環境(和工具)都整合到一起
而Python的IDE,就是:
Python IDE
=Python的整合開發環境
= 把和Python開發相關的各種工具,即Python程式碼編輯器 + Python的執行環境:windows的cmd+有選單和快捷鍵直接幫你實現執行對應的Python程式碼
當然,除此之前,Python的IDE,還會有更多的方便好用的功能,比如除錯功能等。
為何會有Python的IDE
而之所以會有Python的IDE的誕生,也很容易理解。
就是因為,如果開發Python過程中,寫Python程式碼,除錯Python程式碼,查詢相關的函式的解釋等等操作,
如果都是基於前面介紹的,用Notepad++等編輯器去編輯Python程式碼,寫完程式碼了,再切換到windows的cmd中去執行,
往往覺得很麻煩。
尤其是大型專案的話,可能就更加顯得不那麼高效;
以及對應的需要一些額外的功能,比如除錯複雜的Python程式碼,需要一點點跟蹤除錯,找到錯誤的根本原因等等。
上述的開發模式,就更顯得力不從心。
所以,才會有:
Python發展到現在,已經有了很多第三方的,別人開發的,可以用於或者專門用於Python開發的一些整合開發環境,即Python的IDE。
目前常見的一些Python的IDE
參考別人的一些討論和總結:
羅列幾個,相對用的比較廣泛的(排名不分先後):
Ulipad
PyScripter
Wing IDE
Eclipse + pydev外掛
關於其中的一些IDE的效果,可以參考:
【整理】各種Python的IDE(整合開發環境)的總結和對比
Python的IDE和Python程式碼編輯器,Windows的cmd,等的關係
下面,隨便找了一個Python的IDE,
比如,【記錄】使用Python的IDE:PyScripter,通過截圖來對比性的解釋,你就更容易理解,Python的原始開發環境和Python的IDE之間的關係了:
這下,至少你應該對於:
Windows的cmd;
Python的Shell:
-
command line版本;
-
GUI版本:IDLE
Python的IDE;
三者之間的關係,有個大概的認識了。
使用IDE時所遇到的一些常見的問題
IDE只能夠開啟了檔案,並不代表就已經在shell中執行了該檔案
這裡有一個錯誤的例子,比如這裡所遇到的:
如圖,其在當前的IDE中,開啟了一個.py檔案(balanced_color_module.py),按照正常的邏輯,應該到選單中,執行程式碼,然後再去對應的console中(此處估計是Debug I/O),去檢視執行的結果。
但是,很明顯,其此處的那個py檔案(balanced_color_module.py),本身即使執行,也不會有什麼print輸出資訊;
另外,其此處沒有開啟對應的console(此處估計是Debug I/O),而是開啟的是Python Shell,所以,結果就是:
其在Python Shell中輸入的任何程式碼,本質上,和你當前IDE中所開啟的py檔案,都沒有半毛錢關係的。
所以導致的結果就是,雖然在Python Shell中輸入了一些程式碼:
color = {"red":0.2, "green":0.4, "blue":0.4}
balanced_color(color);
但是結果卻出錯,找不到對應的balanced_color函式。
所以,也就在常理之中,預料之內了。
因為,此時其所做的事情是:
使用了IDE,但是並沒有使用IDE中整合的終端除錯輸出;
卻另外開啟了Python Shell,
而由於此處的IDE中開啟的程式碼,和Python Shell沒有半毛錢關係,所以才會執行程式碼出錯,找不到對應的函式的。
需要注意,確保有可以執行的Python起始部分的程式碼
比如這裡遇到的問題是,通過IDE中執行Python程式碼,但是沒有響應:
其所遇到的問題,其實本質上,和IDE沒有關係,但是不熟悉Python的人,還是容易在IDE中犯這類問題的。
錯誤原因是:
沒有起始程式碼可以執行;
解決辦法是:
把上面最後一行的
start();
定格寫,變成:
start();
就可以了。使得Python可以執行到對應的start函式了。
當然,最好的寫法是,把:
start();
再改為:
if __name__ == "__main__":
start();
具體的解釋,參見:
【整理】Python中的__name__和__main__含義詳解
總結:到底使用哪種環境去開發Python
一句話:各取所需。根據自己的需求,決定用什麼開發環境。
對初學者的建議:如何選用Python的開發環境
再加一句:針對初學者,我個人倒是建議使用第一種,即windows的cmd下,去執行python指令碼;
目的很明確,很多東西的學習,其本質上,都是需要一個循序漸進的過程的,學習Python語言同樣如此。
在沒有學會走路,即如何搞懂Windows的cmd下執行Python指令碼,
就想學會跑了,即直接利用Python的IDE,包括shell和第三方開發環境,
結果就是,很多東西,還是不明白到底是為什麼,理解的不透徹。
而當Python的基本知識,基本開發流程熟悉了之後,再建議你去使用第三方的Python的IDE,到時候,才能算是用著很爽。
即:
先:Windows的cmd+Notepad++;
再:選用某個IDE,比如PyScripter,Ulipad等。
相關文章
- 如何在cmd下切換python版本使用Python
- 如何在Windows上使用Python進行開發WindowsPython
- 如何在windows下安裝pythonWindowsPython
- shell指令碼命令 執行python檔案&python命令列執行python程式碼指令碼Python命令列
- python ansible如何執行指令碼?Python指令碼
- 聊聊 Jmeter 如何併發執行 Python 指令碼JMeterPython指令碼
- cmd中如何執行Python檔案Python
- 如何呼叫python中的shell指令碼?Python指令碼
- python 如何執行子層 py 指令碼Python指令碼
- python裡執行shell命令或cmd命令Python
- Python如何使用tkinter編寫GUI程式PythonGUI
- 怎樣在windows上定時執行python指令碼WindowsPython指令碼
- python如何在cmd中升級pip?Python
- 【Python 筆記】在Windows下使用virtualenv管理python虛擬環境Python筆記Windows
- 如何使用Python執行系統命令?Python學習教程!Python
- 怎樣在Python中執行cmdPython
- 如何用 Python 指令碼批量下載 Google 影象?Python指令碼Go
- socket在python下的使用Python
- 如何在 Linux 中以指令碼模式執行 TopLinux指令碼模式
- 如何讓Python指令碼成為在Windows環境中執行的exe檔案Python指令碼Windows
- Python開發篇——如何在Flask下編寫JWT登入PythonFlaskJWT
- 如何利用python原始碼下載進行下單?Python原始碼
- python中使用subprocess批量執行linux下命令PythonLinux
- python中使用subprocess批次執行linux下命令PythonLinux
- 使用Python和Java呼叫Shell指令碼時的死鎖陷阱PythonJava指令碼
- 在Mac下使用Python3MacPython
- 開機自動執行python指令碼Python指令碼
- Python開發IDEPythonIDE
- python寫的指令碼在kail Linux 執行Python指令碼AILinux
- 如何在 Apache Flink 中使用 Python API?ApachePythonAPI
- 如何在Python中使用Java類? - codecentricPythonJava
- 如何在MacOS下安裝Python3MacPython
- 執行python指令碼後臺執行Python指令碼
- cmd中如何退出PythonPython
- Laravel 中執行 Python 指令碼LaravelPython指令碼
- 如何在批處理模式下執行 top 命令模式
- 如何在Windows上使用Git建立一個可執行指令碼?WindowsGit指令碼
- windows下 相容Python2和Python3WindowsPython
- 如何用iPad執行Python程式碼?iPadPython