根據時間戳(毫秒)計算年齡


代碼:

  1. # -*- coding: utf-8 -*-  
  2. import time  
  3. import datetime  
  4.     
  5. def time2age(atime):  
  6.     """ 
  7.     input:atime 一個時間戳(毫秒) 
  8.     return:age 年齡(跟當前時間相比) 
  9.     """  
  10.     # 1.將時間轉化為一個datetime對象  
  11.     atime_date_obj = datetime.datetime.fromtimestamp(atime/1000)  
  12.     # 2.datetime對象轉化為一個元祖,便於后續比較  
  13.     atime_tuple = (atime_date_obj.year,atime_date_obj.month,atime_date_obj.day)  
  14.     # 3.當前日期  
  15.     now_date_obj = datetime.datetime.now()  
  16.     now_tuple = (now_date_obj.year,now_date_obj.month,now_date_obj.day)  
  17.     # 4.計算差值  
  18.     age = now_tuple[0] - atime_tuple[0] + (now_tuple[1:] > atime_tuple[1:]) - 1  
  19.     
  20.     return age  
  21.     
  22.     
  23. if __name__ == "__main__":  
  24.     t = time.time() - 1000000000  
  25.     print(time2age(t * 1000))  

思路:

  1. 用datetime.datetime.fromtimestamp( )方法將時間戳轉化為datetime對象,再轉化為一個(year,month,day)的元祖與當前時間進行比較;
  2. 時間元祖進行比較的時候,利用到了 1 + True = 2, 1 + False = 1的小技巧

 


免責聲明!

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



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