Python是一種開(kāi)放源代碼的腳本編程語(yǔ)言,這種腳本語(yǔ)言特別強調開(kāi)發(fā)速度和代碼的清晰程度。它可以用來(lái)開(kāi)發(fā)各種程序,從簡(jiǎn)單的腳本任務(wù)到復雜的、面向對象的應用程序都有大顯身手的地方。Python還被當作一種入門(mén)程序員最適合掌握的優(yōu)秀語(yǔ)言,因為它免費、面向對象、擴展性強同時(shí)執行嚴格的編碼標準。以下是小編為你整理的學(xué)python還要學(xué)什么 ?
讀優(yōu)秀的開(kāi)源項目源碼。這個(gè)過(guò)程中不斷的反思和積累各種經(jīng)驗。有了問(wèn)題就要google stackoverflow github 去找。 ?
看別人的博客。但是要掌握一些過(guò)濾不好信息的技巧。有些訂閱列表 我在專(zhuān)欄中也有寫(xiě)。大家有空可以去看看。我還訂閱了python社區的一些郵件列表,說(shuō)實(shí)話(huà)很煩。但是有時(shí)候你們看到一些社區開(kāi)發(fā)者討論,甚至是激烈討論。我喜歡靜靜的看他們,學(xué)習他們對一些事情的看法,和思考的角度。 ?
多看書(shū),視頻。
這不是一本常規意義上Python的入門(mén)書(shū)。這本書(shū)中沒(méi)有Python關(guān)鍵字和for循環(huán)的使用,也沒(méi)有細致入微的標準庫介紹,而是完全從實(shí)戰的角度出發(fā),對構建一個(gè)完整的Python應用所需掌握的知識進(jìn)行了系統而完整的介紹。更為難得的是,本書(shū)的作者是開(kāi)源項目OpenStack的PTL(項目技術(shù)負責人)之一,因此本書(shū)結合了Python在OpenStack中的應用進(jìn)行講解,非常具有實(shí)戰指導意義。 ?
《Python Cookbook(第3版)中文版》介紹了Python應用在各個(gè)領(lǐng)域中的一些使用技巧和方法,其主題涵蓋了數據結構和算法,字符串和文本,數字、日期和時(shí)間,迭代器和生成器,文件和I/O,數據編碼與處理,函數,類(lèi)與對象,元編程,模塊和包,網(wǎng)絡(luò )和Web編程,并發(fā),實(shí)用腳本和系統管理,測試、調試以及異常,C語(yǔ)言擴展等。 ?
python簡(jiǎn)介
python(蟒蛇)是一門(mén)面向對象的腳本解釋語(yǔ)言,是一個(gè)叫Guido van Rossum的荷蘭人在1989年發(fā)明的,*個(gè)公開(kāi)發(fā)行版發(fā)行于1991年。 ?
python是自由軟件,源代碼和解釋器都遵循GPL開(kāi)源協(xié)議。 ?
python是一門(mén)計算機語(yǔ)言。非專(zhuān)業(yè)的你只需要知道這一點(diǎn),python是一個(gè)用來(lái)編程寫(xiě)程序的一套規則或者說(shuō)一套開(kāi)發(fā)軟件。 ?
專(zhuān)業(yè)的你還需要知道,python是開(kāi)源的,也就是說(shuō)你可以傳播python解釋器的源代碼,修改并研究它,面向對象編程,并且是一種非編譯型的解釋性語(yǔ)言。 ?
python的優(yōu)勢 ?
python編寫(xiě)簡(jiǎn)單、擁有豐富的庫。 ?
代碼易讀,易維護。(python規定強制用空白符作為語(yǔ)句縮進(jìn)) ?
有一個(gè)在美國工作的朋友對我說(shuō),美國的六歲小孩子都在用python編程。足見(jiàn)python的簡(jiǎn)單性。 ?
庫方面很豐富,有成千上萬(wàn)的python庫,甚至簡(jiǎn)單要寫(xiě)爬蟲(chóng)只需要一個(gè)wget ?
學(xué)python能從業(yè)什么工作? ?
unix/linux網(wǎng)絡(luò )運維 ?
數據挖掘/數據運維 ?
web開(kāi)發(fā) ?
在國內,絕大部分是作為linux管理,或者數據運維 ?
python能做什么? ?
web開(kāi)發(fā),系統管理,游戲開(kāi)發(fā),網(wǎng)絡(luò )程序開(kāi)發(fā),最出名的是python爬數據 ?
等等... ?
python的版本 ?
目前常用的是python2和python3 ?
但是需要注意一點(diǎn)python3向下兼容并不好,也就是說(shuō)python2的代碼,可能在python3上不能運行。但是python3的代碼卻絕對可以在python2上兼容。Python解釋器
Python是一門(mén)具有強類(lèi)型(即變量類(lèi)型是強制要求的)、動(dòng)態(tài)性、隱式類(lèi)型(不需要做變量聲明)、大小寫(xiě)敏感(var和VAR代表了不同的變量)以及面向對象(一切皆為對象)等特點(diǎn)的編程語(yǔ)言。 ?
你可以很容易的通過(guò)Python解釋器獲取幫助。如果你想知道一個(gè)對象(object)是如何工作的,那么你所需要做的就是調用help()!另外還有一些有用的方法,dir()會(huì )顯示該對象的所有方法,還有.__doc__會(huì )顯示其文檔: ?
Python中沒(méi)有強制的語(yǔ)句終止字符,且代碼塊是通過(guò)縮進(jìn)來(lái)指示的??s進(jìn)表示一個(gè)代碼塊的開(kāi)始,逆縮進(jìn)則表示一個(gè)代碼塊的結束。聲明以冒號(:)字符結束,并且開(kāi)啟一個(gè)縮進(jìn)級別。單行注釋以井號字符(#)開(kāi)頭,多行注釋則以多行字符串的形式出現。賦值(事實(shí)上是將對象綁定到名字)通過(guò)等號(“=”)實(shí)現,雙等號(“==”)用于相等判斷,”+=”和”-=”用于增加/減少運算(由符號右邊的值確定增加/減少的值)。這適用于許多數據類(lèi)型,包括字符串。你也可以在一行上使用多個(gè)變量。例如: ?
Python具有列表(list)、元組(tuple)和字典(dictionaries)三種基本的數據結構,而集合(sets)則包含在集合庫中(但從Python2.5版本開(kāi)始正式成為Python內建類(lèi)型)。列表的特點(diǎn)跟一維數組類(lèi)似(當然你也可以創(chuàng )建類(lèi)似多維數組的“列表的列表”),字典則是具有關(guān)聯(lián)關(guān)系的數組(通常也叫做哈希表),而元組則是不可變的一維數組(Python中“數組”可以包含任何類(lèi)型的元素,這樣你就可以使用混合元素,例如整數、字符串或是嵌套包含列表、字典或元組)。數組中*個(gè)元素索引值(下標)為0,使用負數索引值能夠從后向前訪(fǎng)問(wèn)數組元素,-1表示*一個(gè)元素。數組元素還能指向函數。 ?
定義測試函數
def get_num(n, odd=True): a = 1 if odd else 2 return [i for i in range(a, n, 2)]L = get_num(10)print(L) ?
def get_num2(n, odd=False): return get_num(n, odd)print(get_num2(20)) ?
# 系統自帶的偏函數功能,修改某個(gè)參數的默認值get_num3 = functools.partial(get_num, odd=False)print(get_num3(20, odd=False)) ?
print('***列表排序***')L = [3, 1, 6, 0, 4, 9, 8]a = sorted(L)print(a, L) ?
def sorted_down(L, reverse=True): return sorted(L, reverse=reverse)a = sorted_down(L)print(a, L)sorted_down2 = functools.partial(sorted, reverse=True)a = sorted_down2(L)print(a, L)