看了最近幾節視頻,做如下記錄:
__init__.py對於這個文件來說,當目錄中存在這個文件,那麼這個目錄就是一個包,若不存在就是一個普通的目錄。
__name__在代碼中會遇到這個,如果if __name__=='__main__'那麼這個文件是函數的入口,也就是可以從這開始運行。
__file__這個是文件的路徑,__file__這個是整個文件的註釋
自定義函數多參數
def func(*arg),def func(**arg)
以上兩種形式都可以傳入多個參數,前者將多個參數變成列表傳入函數,後者將參數變成字典傳入函數。
序列化和反序列化
這章講了pickle序列化和json序列化,包括dump,dumps,load,loads等函數。
區別是pickle只在python與python傳輸時使用,json可以在不同程序間使用,因爲pickle是python特有的,而json是通用的。pickle可以對各種數據類型序列化,包括基本類型,類等,但是json只能對基本數據類型做序列化。
有一些python內部的函數需要記住
1)lamda這個是匿名函數,就是一些小的簡單功能不常用的操作,可以用這個來完成。
例如 tmp=lamda x,y:x+y print tmp(3,4)
2)map(),對於map函數,作用是簡化列表的遍歷,並且可以對其中每個元素進行操作。
3)reload(),這個函數可以重新導入模塊。因爲python操作中對導入模塊有優化,兩次導入同一模塊默認只導入一次。但是若我們有需求重新導入,可以使用此函數。
4)format(),字符串格式化
5)filter()過濾器,返回真的值
6)反射,這個只記住了一個名詞。據說作用是“以字符串形式導入模塊,並以字符串形式找到函數”。因尚未使用過,用時現百度。