如何在Windows下開發Python:在cmd下運行Python腳本+如何使用Python Shell(command line模式和GUI模式)+如何使用Python IDE

http://www.crifan.com/how_to_do_python_development_under_windows_environment/html

本文目的

但願對於,如何在Windows下,寫Python代碼,進行Python開發,運行Python腳本的人,看了此文後,懂得了:python

什麼是cmd下面去運行Python腳本;shell

什麼是Python的交互式的shell;windows

什麼是Python的IDE。eclipse

前提知識

看此文以前,須要知道:編輯器

Python語言的基本知識

包括知道其代碼就是普通文本等基礎知識ide

不瞭解的,能夠先去看:函數

【整理】計算機語言基礎知識介紹工具

以瞭解關於計算機語言的宏觀介紹;學習

再去看:

【整理】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++後,點擊新建,新建出一個新的文件:

npp new file

而後把上面給大家的代碼,拷貝進去,就變成了:

copied python code

此處因爲是新建的空白文件,因此Notepad++,不知道你是Python代碼,無法幫你自動實現語法高亮,

須要手動去設置一下:

語言->P->Python:

set to python highlight

就能夠看到Python代碼的語法高亮的效果了:

highlighted python code

而後去保存到某個位置。

文件->另存爲:

file save as

在彈出的對話框中,輸入要保存的文件名:demoRunPythonUnderWindows

提示:其中能夠看到Notepad++自動幫你寫好了.py後綴,那是由於你以前設置了Python語法高亮。

而後再選擇對應的路徑去保存:

提示:

我此處的路徑是:

E:\Dev_Root\python\how_to_dev_python\

你本身隨便,只是要注意,路徑中,不帶中文的。以免各類中文路徑不識別等問題。

input file name and save to some folder

保存好後,就是這樣的了:

has saved py file

打開Windows的cmd,而且切換到對應的python腳本所在目錄

方法1:手動打開cmd,並cd到對應路徑

而對於,什麼是windows的cmd,如何打開cmd,如何切換到對應的路徑等內容,不熟悉的話,能夠去參考:

Windows的命令行工具: cmd

方法2:經過Notepad++的Open current dir cmd

此處,使用一個更方便的辦法,利用Notepad++中功能,直接打開cmd,並切換到對應路徑:

run open current dir cmd

而後就直接實現,打開了cmd,而且切換到對應的當前文件所在路徑了:

open cmd and in current dir

在cmd中去運行你的Python腳本(.py文件)

而後就是,在cmd中,輸入你的Python腳本,即.py文件的完整的文件名。

此處是:

demoRunPythonUnderWindows.py

小提示:

正常的是經過手動輸入對應的Python的完整的文件名,即,對於此處的demoRunPythonUnderWindows.py,一個個字母的輸入

不過,此處有個小技巧,能夠利用Windows(和Linux中通用的)Tab鍵,而後會自動顯示出你當前目錄的文件;

若是當前文件夾有多個文件,屢次按Tab鍵,會在多個文件之間切換。此處就一個文件,因此經過按Tab鍵,就能夠一會兒就顯示出對應的整個文件名了:

tab show full name

而後輸入回車,便可運行對應的Python腳本,接着在cmd中也就能夠看到輸出的結果了:

enter to print info

如此,就是一個,完整的,在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的:

python command line

其實,Win7中,有個更方便的方式,直接在搜索框中搜python,便可找到:

search python can show shell

打開後,就是這個樣子的:

opened python shell command line

其中能夠顯示出來對應的python版本信息和系統信息。

而後就是三個大於號>>>接下來,你就能夠,像在以前所說的,普通文本中輸入python代碼同樣,在此一行行輸入代碼,而後就能夠顯示對應的信息了:

directly show print info

其中能夠看到,當你輸入對應的,第一行print時,此處命令行(command line)版本的Python Shell中,就能夠,動態的,交互式地,顯示出對應的信息了。

正因爲,此處能夠,直接地,動態的,交互性式地,顯示出對應的信息,因此,才被叫作Python 的交互式的Shell,簡稱Python Shell。

對應的,把前面的代碼都輸入完畢,結果顯示爲:

show all print info

帶圖形界面的Python Shell – IDLE (Python GUI)

下面將要介紹的,一樣是Python的Shell,可是是相對於command line版本而言,是GUI,帶圖形界面的版本的。

對應的打開方式,和上面相似,能夠直接搜python而找到:

search pyth can found IDLE

對應的,能夠看到,其名字寫的是IDLE。

打開後就是這樣的:

tk python shell

左上角的紅色圖標,好像是TK,是圖形界面庫的一種。

這個就是,不少Python教程中,所經常使用來做爲Python的開發環境,教別人寫Python代碼的那個IDLE。

對應的,輸入上述的代碼,結果也是相似的:

IDLE show print info

關於(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

即:

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

參考別人的一些討論和總結:

【python】【求助】關於python編輯器的選擇

python編輯器對比和推薦

羅列幾個,相對用的比較普遍的(排名不分前後):

Ulipad

PyScripter

Wing IDE

Eclipse + pydev插件

 

關於其中的一些IDE的效果,能夠參考:

【整理】各類Python的IDE(集成開發環境)的總結和對比

 

Python的IDE和Python代碼編輯器,Windows的cmd,等的關係

下面,隨便找了一個Python的IDE,

好比,【記錄】使用Python的IDE:PyScripter,經過截圖來對比性的解釋,你就更容易理解,Python的原始開發環境和Python的IDE之間的關係了:

edit to npp and output to cmd

python interpreter to python shell

這下,至少你應該對於:

Windows的cmd;

Python的Shell:

  • command line版本;

  • GUI版本:IDLE

Python的IDE;

三者之間的關係,有個大概的認識了。

使用IDE時所遇到的一些常見的問題

IDE只可以打開了文件,並不表明就已經在shell中運行了該文件

這裏有一個錯誤的例子,好比這裏所遇到的:

in IDE write python code but open python 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代碼,可是沒有響應:

ulipad run python no response

其所遇到的問題,其實本質上,和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等。

相關文章
相關標籤/搜索