python笔记:time和datetime

import datetime
import time


class My_Time(object):
    def __init__(self):
        pass
    # 获取昨天的日期,不是具体时间
    def get_yesterday(self):
        today = datetime.date.today()
        print(today)
        oneday = datetime.timedelta(days=1)
        print(oneday)
        yesterday = today-oneday
        print(yesterday)
        return yesterday

    # 获取到年月日
    def get_ndays_ago(self,n):
        today = datetime.date.today()
        oneday = datetime.timedelta(days=1)
        ndaysago=today-oneday*n
        print(ndaysago)
        return ndaysago

    # 获取到某天的具体的时间
    def get_ndays_ago2(self,n):
        # 用时间戳
        today = datetime.datetime.now()
        print(today)
        ndaysago = today - datetime.timedelta(days=n)
        print(ndaysago)
        # 去掉秒后面的小数点
        ndaysago_std = ndaysago.strftime("%Y-%m-%d %H:%M:%S")
        print(ndaysago_std)

    # 将时间戳转换成为标准时区的时间,再计算n天前
    def get_utc_time_ndaysago(self,timestamp,n):
        ndaysago = datetime.datetime.utcfromtimestamp(timestamp)-datetime.timedelta(days=n)
        print(ndaysago)

    # 用time模块将时间戳转换为时间,strftime的用法,可以time.strftime(fmt,mytime),也可以mytime.strftime(fmt)效果一样
    def timestamp_into_time(self):
        now = time.time()
        print(now)
        time_err = time.localtime(now)
        print(time_err)
        time_1 = time.strftime("%Y-%m-%d %H:%M:%S",time_err)
        print(time_1)

    # 用datetime模块将时间戳转换为时间
    def datetimestamp_into_time(self):
        # 已经是标准格式,但是秒后面有小数
        now = datetime.datetime.now()
        print(now)
        # 用strftime处理下,把秒后面的小数干掉
        datetime_1 = now.strftime("%Y-%m-%d %H:%M:%S")
        print(datetime_1)



if __name__=="__main__":
    mytime = My_Time()
    # mytime.get_yesterday()
    # mytime.get_ndays_ago(3)
    # mytime.get_ndays_ago2(3)
    # mytime.get_utc_time_ndaysago(1593454555,3)
    # mytime.timestamp_into_time()
    mytime.datetimestamp_into_time()

你可能感兴趣的:(python笔记:time和datetime)