簡(jiǎn)介
?????? Python
是一種強(qiáng)大的容易學(xué)習(xí)的通用編程語言。它包含了內(nèi)建高級(jí)數(shù)據(jù)結(jié)構(gòu),語法優(yōu)雅,可以與其它語言相互協(xié)作,具有很多強(qiáng)大的擴(kuò)展庫(kù),因此又被稱作是“膠水語言”。
Python
是完全開源,其實(shí)現(xiàn)的源程序可以免費(fèi)獲得,可以作為研究學(xué)習(xí)高級(jí)語言的范本。
基本
Python
環(huán)境
Python
的官方網(wǎng)站是
www.python.org
,
在這個(gè)網(wǎng)站下載最新版本的
Python
安裝程序。
Windows
用戶可以下載
MSI
安裝包,其他平臺(tái)可以下載源程序自己編譯,另外針對(duì)
MacOSX
平臺(tái)還有
MacPython
版本。
本文以
Windows
平臺(tái)
Python2.4
版本為例。
Python
的運(yùn)行方式分為交互模式與程序模式,這與早期的
Basic
語言很相似。
在
Windows
命令行或
Unix shell
下輸入
python
命令,即進(jìn)入交互模式。在
>>>
的提示符后面可以輸入程序,回車即立刻執(zhí)行。
?????? Python
的開發(fā)環(huán)境主要有:
l
????????
IDLE Python
安裝程序中帶的簡(jiǎn)單的編輯器,帶有交互環(huán)境與簡(jiǎn)單的編輯調(diào)試環(huán)境。
l
????????
NewEdit
,特別推薦的一個(gè)國(guó)內(nèi)
Python
人
limodou
開發(fā)的編輯器,具有插件擴(kuò)展功能。
l
????????
Eclipse PyDev
插件,可以在
Eclipse
中進(jìn)行
Python
語言開發(fā)。
模塊的安裝和使用
Python
的擴(kuò)展模塊存放在
Python
安裝目錄
\Lib\site-packages
下。在
Python
官方網(wǎng)站有有一個(gè)
Python Package Index (PyPI)
(
http://www.python.org/pypi
),分類存放了各種模塊的索引。下載下來的安裝包一般提供源程序,執(zhí)行
python setup.py install
命令即可安裝。
基本語言要素
Python
具有通用語言的基本要素:變量、表達(dá)式、流程控制、函數(shù)、對(duì)象。
Python
的語言很清新,沒有大括號(hào)分號(hào)或
$
之類的。
Python
比較特殊的地方在于它的完全對(duì)象化,忽略這一點(diǎn)在編程時(shí)會(huì)有些“莫名其妙”的問題。另外
Python
語言使用縮進(jìn)來表示程序的結(jié)構(gòu),有利于寫出漂亮的程序。具體與
C
語言的對(duì)比見表。
程序框架
一個(gè)
Python
程序包含模塊引用、類定義、函數(shù)定義和執(zhí)行語句幾部分。下面是一個(gè)框架:
#!/usr/bin/env python
import os?? #
導(dǎo)入模塊
?
def func():?? #
函數(shù)定義
?????? pass
?
class Object:????????? #
類定義
?????? def __init(self):
????????????? pass
?
if __name__ == ‘__main__’:
?????? #
主程序部分
常見問題
l
????????
怎樣知道有什么函數(shù)可用?
Python
是一種具有“自省”能力的語言,執(zhí)行
dir()
,
可以看到當(dāng)前環(huán)境中的對(duì)象。
dir(__builtins__)
可以列出內(nèi)建的方法。對(duì)其他的模塊也可以相應(yīng)的得到其中的方法。
l
????????
__init__(self)
是什么意思
?
類每創(chuàng)建一個(gè)實(shí)例便會(huì)調(diào)用
__init__
函數(shù),類似于
C++
中的構(gòu)造函數(shù)。
self
變量是指向“這個(gè)”實(shí)例的引用,可以對(duì)照
C++
的
this
指針理解。
l
????????
我怎樣顯示一個(gè)窗口?
涉及到
GUI
的開發(fā),
Python
可以使用很多種圖形庫(kù),包括
tk, wxPython, wxQt, Gtk+,
甚至通過擴(kuò)展可以使用
dotNet WinForm
。
這些就留給讀者繼續(xù)探索。
|