#引入模組
#使用 import datetime 來匯入 使用時前面多加 datetime.datetime即可
import datetime
#相關函式
time.strftime('%y-%m-%dt%h:%m:%s') 轉換字串
timestr.strptime(time1, "%y-%m-%d %h:%m:%s") 轉換utc時區
#timedelte 可用值
#days seconds microseconds milliseconds minute hours weeks
subtime = utc_time - datetime.timedelta(hours=8); 增加或減少時間
#時間摺疊
#dates() datetimes()
#dates kind應該是"year","month","week","day", datetimes的kind追加 "hour","minute",或"second"
#day month會自動區分年份
datatime_log.objects.dates('datetime',"day").filter(userid = 1).count(); # dates返回日期不同的結果集 count 計算總數
#時間篩選
#使用django.utils.timezone.now()輸出的是帶時區的utc時間,稱為active time
from django.utils import timezone
timezone.now()
datetime.datetime(2016, 06, 19, 07, 15, 48, 367000, tzinfo=)
#使用datetime.datetime.utcnow()輸出的是不帶時區的utc時間,稱為***** time
from datetime import datetime
datetime.now()
datetime.datetime(2016, 06, 19, 07, 14, 55, 865000)
#如果專案需要根據時區顯示時間,那就使用django的timezone.now()。不需要的話將use_tz設定為false即可。
use_tz=false
now = datetime.now() #獲取現在的時間
start = datetime.timedelta(hours=23,minutes=59,seconds=59) #獲取當前時間中的一天內的開始時間
#查詢一天內的資料
#gt 大於
#gte 大於等於
#lt 小於
#lte 小於等於
#當前日期資料 即 一天內的資料 .date() .time()
datatime_log.objects.filter(datetime__gte=datetime.datetime.now().date())
#當前時間資料
datatime_log.objects.filter(datetime__gte=datetime.datetime.now().time())
#指定時間資料
datatime_log.objects.filter(userid='1', datetime__year='2020', datetime__month='8',datetime__day='10')
#查詢某年 __year
#查詢某月 __month
#查詢某天 __day
#查詢星期幾__week__day
model.objects.filter(date_time_field__month=9)
model.objects.filter(date_time_field__month=9)
datatime_log.objects.filter(datetime__year=2020,datetime__month=9,userid=1)
#或者 查詢一天內的資料
date_now = datetime.date.today() 獲取當天的日期
da = datetime.timedelta(30) #要查詢的天數
#時間範圍
#__range 範圍
***__range=[date_now -da,date_now])
start = datetime.date(2018,7,12)
end = datetime.date(2018,7,13)
model.objects.filter(time_filed__range=(start,end))
#時間加減
m = datatime_log.objects.get(id=10).datetime
v = datatime_log.objects.get(id=11).datetime
k = v-m
#確認相差的天數
k = (v-m).days
#確認相差的秒數 不會計算年月日相差 僅時分秒相差
k = (v-m).seconds
#確認相差的秒數 計算年月日相差
k = (v-m).total_seconds()
#mysql時區錯誤問題
shell >> mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
時間函式彙總
程式中用到與時間相關的函式時,需要在程式的頭部加入標頭檔案 include 有關時間的結構如下 1.time t long time t time of day in seconds 2.tm struct tm 有關時間的函式 time 功能 返回從公元1970年1月1日0時0分0秒到現在所經過的...
訊號相關函式彙總
1.函式說明 kill 和raise 是用來傳送訊號的 kill 把訊號傳送給程序或程序組 它不僅可以中止程序,也可以向程序傳送其他訊號 raise 把訊號傳送給 程序 自身.它們的原型如下 include include int kill pid t pid,指明要傳送的訊號程序號 int sig...
訊號相關函式彙總
1.函式說明 kill 和raise 是用來傳送訊號的 kill 把訊號傳送給程序或程序組 它不僅可以中止程序,也可以向程序傳送其他訊號 raise 把訊號傳送給 程序 自身.它們的原型如下 include include int kill pid t pid,指明要傳送的訊號程序號 int sig...