python 时间戳、时间字符格式化、判断时间在某个时间段内

1. 获得当天时间的前一天、后一天(注意时间戳是以秒s为单位的,当将时间戳再转为格式化的时间字符串时,注意不能再用%f 毫秒)

def testfunc():
    today = date.today()
    print today,type(today)
    yesterday = date.today() + timedelta(days=-1)
    print yesterday,type(yesterday)
    yesterday = (date.today() + timedelta(days=-1)).strftime("%Y.%m.%d")
    print yesterday
    a = time.time()
    print a
    ltime = time.localtime(a)
    print "ltime",ltime
    gtime = time.gmtime(a)
    print gtime
    time_string = time.strftime('%Y.%m.%d.%H.%M.%S', ltime)
    gtime_string = time.strftime('%Y-%m-%dT%H:%M:%SZ', time.gmtime(time.time()))
    print time_string
    print "gtime_string",gtime_string,type(gtime_string)

    date_str = "2018/11/13 17:32"
    print "start:", date_str
    timeArray = time.strptime(date_str, "%Y/%m/%d %H:%M")
    timeStamp = int(time.mktime(timeArray))
    timeStampPlusOneday = timeStamp + +86400
    # print timeStampPlusOneday
    timeArray = time.localtime(timeStampPlusOneday)
    otherStyleTime = time.strftime("%Y/%m/%d %H:%M", timeArray)
    print "other:", otherStyleTime

    print "test"
    yesterday = date.today() + timedelta(days=-1)
    yesterday = yesterday.strftime("%Y.%m.%d")
    print yesterday
    print yesterday + " 00:00:00"
    print "uesd:",time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime(time.time()))

2.判断某个时间点是否在两个时间点内

def getNonWorkTime():
    # 范围时间
    a_time = datetime.datetime.strptime(str(datetime.datetime.now().date()) + '2:00', '%Y-%m-%d%H:%M')
    b_time = datetime.datetime.strptime(str(datetime.datetime.now().date()) + '5:00', '%Y-%m-%d%H:%M')
    c_time = datetime.datetime.strptime(str(datetime.datetime.now().date()) + '7:00', '%Y-%m-%d%H:%M')
    d_time = datetime.datetime.strptime(str(datetime.datetime.now().date()) + '13:00', '%Y-%m-%d%H:%M')
    print a_time,b_time,c_time,d_time
    # 当前时间
    n_time = datetime.datetime.now()
    print "now:",n_time
    # 判断当前时间是否在范围时间内
    if b_time> n_time > a_time or d_time> n_time > c_time:
        print "not work"
    else:
        print "work"

3.获得一分钟之前的时间,一小时之后的时间

def oneMinStr():
    start = time.strftime('%Y/%m/%d %H:%M:%S', time.gmtime(time.time()))
    print "start:", start,type(start)
    timeArray = time.strptime(start, "%Y/%m/%d %H:%M:%S")
    timeStamp = int(time.mktime(timeArray))
    timeStampPlusOneday = timeStamp + -60
    # print timeStampPlusOneday
    timeArray = time.localtime(timeStampPlusOneday)
    endtime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
    print "other:", endtime,endtime.split()[1]
    s = "(" + endtime + "-" + start.split()[1] + ")"
    print s
def addOneHour():
    #date_str = "2018/11/13 17:32"
    date_str = "2019-02-21T16:00:00.000000Z"
    print "start:", date_str
    timeArray = time.strptime(date_str, "%Y-%m-%dT%H:%M:%S.%fZ")
    timeStamp = int(time.mktime(timeArray))
    timeStampPlusOneday = timeStamp + +3600
    # print timeStampPlusOneday
    #timeStamp = 1381419600
    dateArray = datetime.datetime.utcfromtimestamp(timeStampPlusOneday)
    otherStyleTime = dateArray.strftime("%Y--%m--%d %H:%M:%S")
    print otherStyleTime  # 2013--10--10 15:40:00


    timeArray = time.localtime(timeStampPlusOneday)
    otherStyleTime = time.strftime("%Y/%m/%d %H:%M", timeArray)
    print "other:", otherStyleTime

    minTime = "2019-02-21T16:00:00.000000Z"
    maxTime = "2019-02-28T16:00:00.000000Z"
    gt = "2019-02-21T16:00:00.000000Z"
    lt = "2019-02-21T18:00:00.000000Z"

    print "initial time:", gt

    gtArray = time.strptime(gt, "%Y-%m-%dT%H:%M:%S.%fZ")
    #时间戳与字符类型互转
    timeStamp = int(time.mktime(gtArray))
    timeStampPlusOneHour = timeStamp + +3600
    print timeStampPlusOneHour
    timeArray = time.localtime(timeStampPlusOneHour)
    otherStyleTime = time.strftime("%Y-%m-%dT%H:%M:%SZ", timeArray)
    print "addOH", otherStyleTime
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小金子的夏天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值