新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python如何計算不同日期差多少天?
python計算不同日期差多少天的方法:

我們提供的服務(wù)有:成都做網(wǎng)站、網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、北鎮(zhèn)ssl等。為上千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的北鎮(zhèn)網(wǎng)站制作公司
首先導(dǎo)入需要用到的時間和日期庫,創(chuàng)建日期相差的方法函數(shù):
import time import datetime #計算兩個日期相差天數(shù),自定義函數(shù)名,和兩個日期的變量名。 def Caltime(date1,date2): #%Y-%m-%d為日期格式,其中的-可以用其他代替或者不寫,但是要統(tǒng)一,同理后面的時分秒也一樣;可以只計算日期,不計算時間。 #date1=time.strptime(date1,"%Y-%m-%d %H:%M:%S") #date2=time.strptime(date2,"%Y-%m-%d %H:%M:%S") date1=time.strptime(date1,"%Y-%m-%d") date2=time.strptime(date2,"%Y-%m-%d") #根據(jù)上面需要計算日期還是日期時間,來確定需要幾個數(shù)組段。下標(biāo)0表示年,小標(biāo)1表示月,依次類推... #date1=datetime.datetime(date1[0],date1[1],date1[2],date1[3],date1[4],date1[5]) #date2=datetime.datetime(date2[0],date2[1],date2[2],date2[3],date2[4],date2[5]) date1=datetime.datetime(date1[0],date1[1],date1[2]) date2=datetime.datetime(date2[0],date2[1],date2[2]) #返回兩個變量相差的值,就是相差天數(shù) return date2-date1
time strptime() 函數(shù)根據(jù)指定的格式把一個時間字符串解析為時間元組。
接著就是需要判斷輸入的日期時候為合法日期了,函數(shù)代碼為:
#判斷日期是否為合法輸入,年月日的格式需要與上面對應(yīng),正確返回True,錯誤返回False,注意大小寫。 def is_date(str): try: time.strptime(str,"%Y-%m-%d") return True except: return False
最后就是運用函數(shù),并輸出到txt文檔中:
if __name__=='__main__':
#提示信息請根據(jù)實際情況更改
print('請輸入較早日期(格式例:xxxx-xx-xx):')
while True:
dt1=input()
if is_date(dt1)==True:
break
else:
print('請輸入正確的日期?。?!請重新輸入?。?!')
#print(is_date(dt1))
print('\n請輸入較晚日期(格式為:xxxx-xx-xx):')
while True:
dt2=input()
if is_date(dt2)==True:
break
else:
print('請輸入正確的日期?。?!請重新輸入?。?!')
#將結(jié)果保存到當(dāng)前目錄下的t_day.txt,該txt文檔會自動創(chuàng)建,名字可自定義。
with open('./t_day.txt','a') as f:
f.write('較早日期為:'+dt1+' 較晚日期為:'+dt2)
f.write('\n兩個日期相差 ')
print (Caltime(dt1,dt2),file=f)
f.write('\n')
f.close運行結(jié)果如下:
文章名稱:創(chuàng)新互聯(lián)Python教程:python如何計算不同日期差多少天?
瀏覽路徑:http://m.fisionsoft.com.cn/article/coocpoe.html


咨詢
建站咨詢
