《Python核心編程 》手記-快速入門,python核心編程
春節終於over了,迴歸充實的學習研究生活。開啟久違的CSDN部落格,看到官方推送的 『部落格Markdown編輯器上線啦』,讓我頓時有了寫作的慾望,真是程式員的福利。之前閱讀各種文章書籍,都是用MarkDownPad做的筆記,喜歡以及習慣於MarkDown簡潔的文法。
總之各種方便。為了試試效果,將以前閱讀《Python核心編程》的手記整理髮上來,也當溫習一遍。
第二章 快速入門
print語句中使用字串格式操作符,實現字元替換功能。
print "%s is %d" %("one",1)
%s、%d、%f分別用字串、整型、浮點類型資料來替換。
print語句重新導向
logfile = open('/tmp/mylog.txt','a') print >> logfile,'something....' logfile.close()
符號>>是用來重新導向的,上面的代碼將輸出添加到記錄檔mylog.txt中。
raw_input內建函數,讀取鍵盤輸入,傳回值類型是字串。
s = raw_input('some tips:')
操作符單斜杆 / 做傳統的除法,雙斜杠 //用作浮點除法,四捨五入。
- python中的變數名命名規則與其他大多數進階語言一樣,都是受到C語言影響。(事實上python本身就是C語言寫成的)
- python是動態型語言,不需要預先聲明變數的類型。變數的類型在賦值的那一刻確定。
- python是動態型語言,不需要預先聲明變數的類型。變數的類型在賦值的那一刻確定。
- python的長整型所能表達的範圍遠遠超過C語言的長整型,僅受限於電腦的虛擬記憶體總數,不用擔心溢出。
- something interesting:1.1無法用二進位精確表示,2.2、3.3、、、很多數字都無法用二進位精確表示。但python中提供了十進位浮點型decimal模組,可以精確表示。
- 元組:可看成是唯讀列表,不可修改。
字典
aDict = {"one":1,"two":2}aDict.keys() #輸出['one','two']for key in aDict:print key,aDict[key]
python中的for迴圈與傳統的for迴圈(計數器迴圈)不太一樣,它更像shell裡的foreach迭代。python中的for接受可迭代對象作為其參數,每次迭代其中的一個元素。在for語句中,經常還會用到range、len函數。
for i in range(len(A)): print A[i]
列表解析,這個非常實用
spdEvens = [x**2 for x in range(8) if not x%2]
檔案和內建函數open()、file()
handle = open(file_name,access_mode = 'rb')
r表示可讀模式,b表示二進位訪問,還有w表示可寫入模式(覆蓋掉原來的),a表示添加模式(不覆蓋),+表示讀寫入模式。
open()返迴文件的控制代碼handle,後續的操作如readlines()、close()可通過這個控制代碼進行:如handle.close()….
try-except
try之後的程式碼群組,即你打算管理的代碼。except之後的程式碼群組,則是處理錯誤的代碼。
函數在調用前必須先定義(被調用函數要在調用處上方)。
- 如果函數沒有return語句,會自動返回None對象。
- 所有名字開始和結束都有兩個底線的方法都是特殊方法。如name、init
- 模組,可以包含執行代碼、函數、類。.py檔案即一個模組。
- 常用的函數:int()、str()、range()、len()、raw_input()、ttype()、dir([obj])、help([obj])