datetime模块的简单用法,以及给出日期知道这周的其他日期,换成毫秒

import datetime

print(datetime.datetime.today()) #2018-08-14 14:18:28.575412
print(datetime.date.today())  #2018-08-14
print(datetime.time(10,20,10)) #10:20:10

s=datetime.datetime.now()

print(s+datetime.timedelta(3)) #三天后的本地时间
#2018-08-17 14:28:55.699587
print(s+datetime.timedelta(minutes=20)) #二十分钟后的时间
#2018-08-14 14:48:55.699587
print(s+datetime.timedelta(3,minutes=20,hours=2)) #三天又两小时二十分钟后的时间
#2018-08-17 16:48:55.699587

print(s+datetime.timedelta(-2)) #两天前的时间
#2018-08-12 14:28:55.699587

获取上个月最后一天的时间

import datetime

today=datetime.date.today()
first=datetime.date(day=1,month=today.month,year=today.year)
print(first) #得到月初的时间 2018-08-01
lastmonth=first-datetime.timedelta(days=1)
print(lastmonth) #2018-07-31

 改变年,月,日,时,分,秒

import datetime
today=datetime.datetime.today()
s=datetime.datetime(year=today.year,month=1,day=today.day) #至少要有三个参数
print(s) #2018-01-14 00:00:00

#其中s=datetime.datetime(year=today.year,month=1,day=today.day)
#可以改变为任意值
#year= 改变年
#month= 月
#day=  日
#hour= 时
#minute= 分
#second= 秒
#microsecond= 毫秒

 给出日期知道这周内的其他日期

mydate=sys.argv[1]
def get_datelist(mydate):
    vdate_str = mydate
    vdate = datetime.datetime.strptime(vdate_str, '%Y-%m-%d').date()
    dayscount = datetime.timedelta(days=vdate.isoweekday())
    dayfrom = vdate - dayscount + datetime.timedelta(days=1)
    # dayto = vdate - dayscount + datetime.timedelta(days=7)
    day_end = vdate - dayscount + datetime.timedelta(days=8)  # 获取下周一日期
    # print(' ~~ '.join([str(dayfrom), str(dayto)]))  #得到日期的范围2020-02-24 ~~ 2020-03-01
    week7 = []
    i = 0
    date_list=[]
    while (i <= 6):
        week7.append(str(dayfrom + datetime.timedelta(days=i))+" 12:00")

        if i==0 or i==6:
            date_list.append(str(dayfrom + datetime.timedelta(days=i)).split('20-')[1])
        i += 1
    date_list.append(str(day_end).split('20-')[1])
    # print(date_list,week7)
    return [date_list,week7]
date_list,x_label=get_datelist(mydate)

将日期变成毫秒

#下面是将日期转化成毫秒
def time_mill(Tim):
    time1=time.strptime(Tim,"%Y-%m-%d %H:%M:%S")
    my_time=int(time.mktime(time1)) * 1000
    return my_time
#date_list=["02-24","03-01","03-02"] #提供信息 星期一,星期天,下周一
date_static="2020-{} 00:00:00"
bb=[]
for i in date_list:
    aa=time_mill(date_static.format(i))
    bb.append(aa)

其他

原文地址:https://www.cnblogs.com/mmyy-blog/p/9474534.html