Python語(yǔ)言是一種典型的腳本語(yǔ)言,簡(jiǎn)潔,語(yǔ)法約束少,接近人類(lèi)語(yǔ)言。有豐富的數(shù)據(jù)結(jié)構(gòu),例如列表、字典、集合等。具有可移植性,支持面向過(guò)程和面向?qū)ο缶幊?,并且開(kāi)源。以下是小編為你整理的python速成教程 ?
下載安裝:從python官網(wǎng)下載開(kāi)發(fā)和運(yùn)行環(huán)境程序。本例下載python-3.3.3.amd64的安裝包,并安裝。 ?
開(kāi)發(fā)工具:window系統(tǒng)中,python有多種開(kāi)發(fā)工具,比如,一、直接在cmd命令窗口執(zhí)行,但此種僅能單條語(yǔ)句執(zhí)行,不能運(yùn)行完整的程序。二、python自帶的集成開(kāi)發(fā)環(huán)境,可通過(guò)開(kāi)始——所有程序——python3.3——IDLE(Python GUI)啟動(dòng)。三、其他集成開(kāi)發(fā)環(huán)境,如PythonWin等,有編輯和調(diào)試能力,還實(shí)現(xiàn)了MFC類(lèi)庫(kù)存的包裝。
?
本例中,使用python自帶的開(kāi)發(fā)環(huán)境。File—New File,新建py文檔,編寫(xiě)程序,保存。Run——Run module,可得到運(yùn)行結(jié)果。 ?
封裝性:可以把屬性、方法結(jié)合在一起,不可以直接訪(fǎng)問(wèn)對(duì)象的屬性,僅能通過(guò)接口與對(duì)象發(fā)生聯(lián)系。以下把方法和屬性封裝成了一個(gè)類(lèi)。 ?
構(gòu)造器:python有3種類(lèi)型的構(gòu)造器,且一個(gè)類(lèi)中僅可以定義一個(gè)構(gòu)造器,若多個(gè),則以*為準(zhǔn)。1.若不聲明,則默認(rèn)為一個(gè)沒(méi)有任何操作的特殊的__init__方法,__init__(self),此時(shí)可通過(guò)obj = my_class()聲明實(shí)例。 2.自聲明__init__構(gòu)造器,會(huì)覆蓋默認(rèn)的,且可以更新類(lèi)的數(shù)據(jù)屬性。3.構(gòu)造器方法__new__(),用于不可變內(nèi)置類(lèi)型派生,不能通過(guò)實(shí)例訪(fǎng)問(wèn)屬性,僅能通過(guò)類(lèi)訪(fǎng)問(wèn)。 ?
繼承性:python支持多繼承,且子類(lèi)繼承了父類(lèi)的方法和屬性。若子類(lèi)中有和父類(lèi)相同名稱(chēng)的方法,則子類(lèi)會(huì)覆蓋(Override)父類(lèi)方法。父類(lèi)方法依舊可以訪(fǎng)問(wèn)。 ?
數(shù)據(jù)結(jié)構(gòu):有豐富的數(shù)據(jù)結(jié)構(gòu),例如列表、字典、集合等。本例簡(jiǎn)單介紹字典的使用。字典是鍵值對(duì)的無(wú)序集合,是可變對(duì)象。鍵在字典中是*的且必須是不可變對(duì)象。值可以是可變對(duì)象或不可變對(duì)象。以下例子對(duì)python字典的定義、訪(fǎng)問(wèn)、更新等的操作。 ?
學(xué)會(huì)python的作用
Python高級(jí)工程師 : 北上廣深的話(huà),薪金在1萬(wàn)以上,需要精通Linux/Unixg平臺(tái),有英語(yǔ)閱讀功底。 ?
Web網(wǎng)站開(kāi)發(fā)方向: 熟悉Web開(kāi)發(fā)的常用 Python框架,熟悉掌握Mysql類(lèi)數(shù)據(jù)庫(kù)的操作即可。 ?
SEO工程師: 為自己或公司開(kāi)發(fā)和改進(jìn)SEO相關(guān)軟件,實(shí)現(xiàn)自動(dòng)化搜索引擎優(yōu)化和日常重復(fù)工作。 ?
Python自動(dòng)化測(cè)試:熟悉自動(dòng)化流程、方法和常用的模塊的使用,有英文讀寫(xiě)的能力。 ?
Linux運(yùn)維工程師: Linux服務(wù)器管理,數(shù)據(jù)分析、自動(dòng)化處理任務(wù)、分析網(wǎng)站日志、定時(shí)計(jì)劃管理,解放雙手。 ?
Python游戲開(kāi)發(fā)工程師: 網(wǎng)絡(luò)游戲后端服務(wù)器邏輯的開(kāi)發(fā)和處理,有大型數(shù)據(jù)庫(kù)使用經(jīng)驗(yàn),喜歡從事游戲相關(guān)工作。 Python自學(xué)愛(ài)好者: 可以自己開(kāi)發(fā)一些小軟件和應(yīng)用,帶圖形化界面的軟件,方便日常工作。 ?
如何導(dǎo)入re模塊
導(dǎo)入re模塊 ?
#導(dǎo)入正則表達(dá)式模塊 ?
import re ?
再來(lái)一個(gè)簡(jiǎn)單的例子演示 ?
#簡(jiǎn)單演示 ?
s='123abc123abc123abc' ?
print s ?
print re.findall(r'123',s) ?
#'r'...''表示raw字符串 ?
#功能字符:'.','*','?','^','$','/' ?
#分界符:'[',']','(',')','{','}' ?
#轉(zhuǎn)義字符:'d','w','s','b' ?
#'|'表示或 ?
s='I have a pen and I have a apple' ?
print s ?
print re.findall(r'I have a pen|apple',s) ?
print re.findall(r'I have a (?:pen|dog)',s) ?
使用無(wú)捕獲組與一般或'|'的區(qū)別 ?
無(wú)捕獲組使用'(?:...)'格式 ?
#無(wú)捕獲組:'(?:)' ?
s='ababababba babab babababab' ?
print re.findall(r'/b(?:ab)+/b',s)
?
#'.'匹配除換行符之外的所有字符,若選用re.S則包括所有字符 ?
s='123n456n789' ?
print s ?
print re.findall(r'.+',s) ?
print re.findall(r'.+',s,re.S) ?
Python是一種計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言 你可能已經(jīng)聽(tīng)說(shuō)過(guò)很多種流行的編程語(yǔ)言,比如非常難學(xué)的C語(yǔ)言,非常流行的Java語(yǔ)言,適合初學(xué)者的Basic語(yǔ)言,適合網(wǎng)頁(yè)編程的JavaScript語(yǔ)言等等。那Python是一種什么語(yǔ)言? ?
首先,我們普及一下編程語(yǔ)言的基礎(chǔ)知識(shí)。用任何編程語(yǔ)言來(lái)開(kāi)發(fā)程序,都是為了讓計(jì)算機(jī)干活,比如下載一個(gè)MP3,編寫(xiě)一個(gè)文檔等等,而計(jì)算機(jī)干活的CPU只認(rèn)識(shí)機(jī)器指令,所以,盡管不同的編程語(yǔ)言差異極大,*都得“翻譯”成CPU可以執(zhí)行的機(jī)器指令。而不同的編程語(yǔ)言,干同一個(gè)活,編寫(xiě)的代碼量,差距也很大。 ?
比如,完成同一個(gè)任務(wù),C語(yǔ)言要寫(xiě)1000行代碼,Java只需要寫(xiě)100行,而Python可能只要20行。所以Python是一種相當(dāng)高級(jí)的語(yǔ)言。 ?
你也許會(huì)問(wèn),代碼少還不好?代碼少的代價(jià)是運(yùn)行速度慢,C程序運(yùn)行1秒鐘,Java程序可能需要2秒,而Python程序可能就需要10秒。 ?
那是不是越低級(jí)的程序越難學(xué),越高級(jí)的程序越簡(jiǎn)單?表面上來(lái)說(shuō),是的,但是,在非常高的抽象計(jì)算中,高級(jí)的Python程序設(shè)計(jì)也是非常難學(xué)的,所以,高級(jí)程序語(yǔ)言不等于簡(jiǎn)單。 ?
但是,對(duì)于初學(xué)者和完成普通任務(wù),Python語(yǔ)言是非常簡(jiǎn)單易用的。連Google都在大規(guī)模使用Python,你就不用擔(dān)心學(xué)了會(huì)沒(méi)用。 ?
用Python可以做什么?可以做日常任務(wù),比如自動(dòng)備份你的MP3;可以做網(wǎng)站,很多著名的網(wǎng)站包括YouTube就是Python寫(xiě)的;可以做網(wǎng)絡(luò)游戲的后臺(tái),很多在線(xiàn)游戲的后臺(tái)都是Python開(kāi)發(fā)的??傊褪悄芨珊芏嗪芏嗍吕?。