【python】時間戳、字典列表排序


記錄一下昨天學到的知識:

 

一、文件相關

文件追加: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以列表形式返回字典鍵值對

案例:

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM