記錄一下昨天學到的知識:
一、文件相關
文件追加:f = open("fname","a") 文件不存在時創建
二、時間戳相關
http://www.jb51.net/article/47957.htm
獲取時間戳:
import time #獲得當前時間時間戳 now = int(time.time())
獲取指定格式時間:
import datetime #獲得當前時間 now = datetime.datetime.now() ->這是時間數組格式 #轉換為指定的格式: otherStyleTime = now.strftime("%Y-%m-%d %H:%M:%S")
三、判斷列表、字典為空
False,0,'',[],{},() 都視為假
四、列表、字典排序
http://gaopenghigh.iteye.com/blog/1483864
http://www.cnblogs.com/kaituorensheng/archive/2012/08/07/2627386.html
列表排序:
設列表格式為:[[1,2,3,4],[5,6,7,8],...]的格式, 以每項元素的第4個值的大小排序。 reverse=True表示從大到小排序
for item in sorted(somelist,key = lambda asd:asd[3], reverse = True): #do something
字典排序:
設字典格式為:{key:[v1,v2], key:[v3,v4],...}, 以每項的第二個value的大小順序排序
for item in sorted(dict.iteritems(),key = lambda asd:asd[1][1], reverse = True): #do something
注意1:字典返回的格式是元祖的列表,key作為元祖的第一項,value作為元祖的第二項。
如上面的返回形式為:[(key,[v1,v2]),(key,[v3,v4]),...]
注意2:排序后,字典or列表本身的順序並沒有改變!!直接訪問字典or列表還是亂序的!!
兩個函數
1.lambda
功能: 創建匿名函數
區別: 和def函數定義,以下兩點區別
- lambda會創建一個函數對象,但不會把這個函數對象賦給一個標識符;而def則會把函數對象賦值給一個變量
- lambda它只是一個表達式,而def則是一個語句
案例:
2.iteritems()
功能: iteritems()以迭代器對象返回字典鍵值對
區別: 和item相比:items以列表形式返回字典鍵值對
案例: