分享

python时间处理

 心不留意外尘 2016-04-26
from http://andylin02./blog/1013783
2011.04

Python代码 
  1. import time;  
  2. import os;  
  3. import sys;  
  4.   
  5. #print a day  
  6. def PrintTime(stTime):  
  7.     print("%s-%s-%s %s:%s:%s" %(stTime.tm_year, stTime.tm_mon, stTime.tm_mday, stTime.tm_hour, stTime.tm_min, stTime.tm_sec));  
  8.   
  9. def ToInt(strVal):  
  10.     try:  
  11.         nVal = int(strVal);  
  12.     except:  
  13.         return 0;  
  14.     return nVal;  
  15.   
  16.   
  17. def GetNextDay(nDay):  
  18.     print("----------Next %s Day --------------" %nDay);  
  19.     nTimes = time.time() + (ToInt(nDay) * 60 * 60 * 24);  
  20.     PrintTime(time.localtime(nTimes));  
  21.       
  22. def DoNextDay():  
  23.     nDays = input("please input days:");  
  24.     GetNextDay(nDays);  
  25.   
  26. def DoGetDays():  
  27.     strDate1 = input("please input first date:");  
  28.     strDate2 = input("please input second date:");  
  29.       
  30.     stDate1 = time.strptime(strDate1, '%Y-%m-%d');  
  31.     stDate2 = time.strptime(strDate2, '%Y-%m-%d');  
  32.   
  33.     nSec1 = time.mktime(stDate1) - (stDate1.tm_hour * 60 * 60 + stDate1.tm_min * 60 + stDate1.tm_sec);  
  34.     nSec2 = time.mktime(stDate2) - (stDate2.tm_hour * 60 * 60 + stDate2.tm_min * 60 + stDate2.tm_sec);  
  35.   
  36.     nDay = ToInt((nSec2 - nSec1) / (24 * 60 * 60));  
  37.     print("相差:%s天" %nDay);  
  38.   
  39. def PrintMessage():  
  40.     print("------------------------------------------");  
  41.     print("0. 计算N天之后的日期");  
  42.     print("1. 计算2个日期直接的间隔日");  
  43.     print("exit 退出");  
  44.     print("------------------------------------------");  
  45.   
  46. if "__main__" == __name__:  
  47.     while 1:  
  48.         print("---------Current Day -----------");  
  49.         PrintTime(time.localtime(time.time()));  
  50.   
  51.         PrintMessage();  
  52.         strInput = input("请选择:");  
  53.         if "exit" == strInput:  
  54.             sys.exit(0);  
  55.         elif '0' == strInput:  
  56.             DoNextDay();              
  57.         elif '1' == strInput:  
  58.             DoGetDays();  
  59.         else:  
  60.             print("请输入正确的命令");  
  61.   
  62.         print("\n\n");  
  63.       
  64.       
  65.     
  66.       

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约