資源描述:
《python核心編程筆記》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、1.26.20151對于python文件.py,如果你直接雙擊它會啟動DOS命令行,但是一般是一閃而過的結(jié)果,對于這種情況,你可以在末尾寫上raw_input()使得命令行停留直到你輸入為止。Python沒有大括號,而是使用不同縮進區(qū)分不同代碼塊。2元素列表集合以及字典都可以存儲任何互不相同的數(shù)據(jù)。訪問字典的鍵值如dict.keys()。3for循環(huán)和range或者xrange一起使用用于計數(shù)4python的靈活如一次性輸出多個變量值以及一次性賦值多個值5range函數(shù)經(jīng)常和len函數(shù)一起使用進行字符串索引。比如知道某個字符串里的每個字符的對應(yīng)索引:6函數(shù)enumerate解決了
2、在循環(huán)里要么僅僅是循環(huán)索引值要么僅僅循環(huán)元素值的缺點:實際上,返回的形式為兩個值,第一個是索引值,第二個是元素值。7列表解析,如:8文件操作:其中r表示讀取文件,w表示寫入文件,a表示添加。其他的如b表示是二進制訪問文件。如果未指定那么默認是r。打開后,返回一個文件句柄也就是認為的地址吧。通過訪問文件對象調(diào)用文件的方法如readlines等。當然,這樣的格式就是指默認和python文件是在一個目錄下的。記住open后必須wenjian.close()9在輸出時候,一個有有意思的技巧就是使用逗號,抑制自動生成的換行符號。因為每次print后都會自動生成一個換行符。10使用函數(shù)fil
3、e()等價于open,但是前提都是文件要首先存在。11捕捉錯誤和異常,函數(shù)try–except:12定義函數(shù)時候,默認參數(shù)問題:表示參數(shù)為debug但是在定義參數(shù)時候給賦初值了,如果調(diào)用函數(shù)時候沒有初始化函數(shù)參數(shù)那么就使用默認的參數(shù)值為true,反之就使用你自定義的參數(shù)值。13關(guān)于定義類對象,格式為classClassName(父類名稱):可以在括號里提供一個父類名稱表示繼承關(guān)系,如果沒有的話那么就是使用object作為父類繼承。在類里面定義函數(shù)的時候,作為參數(shù)始終要有self:作用就等價于this。每個類都有一個默認函數(shù)__init__()作用初始化實例對象。用戶可以重新定義這
4、個函數(shù)。14說明下,self.__class__等價于實例化它的類的名字,就是類名本身。15模塊是一個獨立文件,組合了各種函數(shù)類等。模塊是不帶后綴.py的文件。使用sys模塊的標準輸出函數(shù)write(),函數(shù)不會再字符串后自動換行。16使用反斜杠繼續(xù)代碼:1.27.20151python允許鏈式賦值形式,23python支持多元賦值,建議是這樣寫的,代碼更具可讀性。4靈活的交換兩個數(shù),5屬性__doc__可以查看文檔字符串,對于方式為a.__doc__,其中a是對象,類或模塊或函數(shù)等:>>>str.__doc__"str(object='')->stringReturna
5、nicestringrepresentationoftheobject.Iftheargumentisastring,thereturnvalueisthesameobject.">>>deffunc():'thisisastring'>>>func.__doc__'thisisastring'1.28.20151一個典型的python文檔如圖:2關(guān)于如何判斷一個模塊是被導(dǎo)入還是被執(zhí)行,使用變量__name__:3python使用引用計數(shù)來記錄內(nèi)存里所有對象,當這個對象一被創(chuàng)建就創(chuàng)建了一個引用計數(shù),如果這個對象不被需要時候則引用計數(shù)為0就很可能被回收??紤]一個對象的引用計數(shù)增
6、加的情況:考慮一個對象的引用計數(shù)減少的情況:當對象銷毀:當變量被賦值給另一個對象,原來對象的引用就會減1。4介紹兩個腳本代碼1:這段代碼的作用是將你輸入的內(nèi)容寫入到文件里。反之,讀取文件的內(nèi)容到屏幕上:同時,try:exceptIOError,e:else:如果有異常的話,拋出異常。1.29.20151代碼對象:2異常:3python的擴展切片語法,多維切片和步進切片和省略切片:多維切片,認為是按照最短切片輸出:4xrange函數(shù):——類似range但是針對大數(shù)據(jù)集合。5python里判斷兩個對象是否是共享一個地址,即是否共享一個內(nèi)存空間,使用函數(shù)is或isnot:操作符is等價
7、于id符號。6整型對象和字符串對象都是不可變的對象,而浮點類型等是可變的:發(fā)現(xiàn)整型對象時候,登記于b=a共享一個地址。按照文章的意思,python是為了使得運算更加高效,因此才緩存這些小整數(shù)的,python認為這些小整數(shù)是經(jīng)常被用到的。因為對不經(jīng)常用到的大整數(shù)的內(nèi)存地址就不一樣。記住,python的高效緩存地址,出現(xiàn)這樣情況的小整數(shù)范圍為整數(shù)范圍在300以內(nèi),這個是我測出的2.7.8版本的結(jié)果。7布爾類型是andornot,三個。其中not是三個中最高的。只比所有比較運算符低。8