美文网首页
python的时间和日期

python的时间和日期

作者: Judy警官 | 来源:发表于2019-05-30 20:35 被阅读0次

这里总结了python常用的时间和日期处理的几个函数,并封装了常用的时间操作。

引入的主要的包是time和datetime;

时间元组---》时间字符串:time.strftime(格式字符串,时间元组)

时间字符串--》时间元组:time.strptime(时间字符串,格式字符串)

时间戳--》时间元组:time.localtime(时间戳)

时间元组--》时间戳:time.mktime(时间元组)

时间变量:datetime.timedelta(hours=xxx),在datetime.datetime.now()基础上加减

几个小栗子作为实践:

#coding='utf-8'

'''

1.获得当前日期:xxxx-xx-xx,xxxx年xx月xx日

2.获得当前时间:xx:xx:xx,xx时xx分xx秒

3.获得年月日时分秒:xxxx-xx-xx xx:xx:xx,xxxx年xx月xx日xx时xx分xx秒

4.将日期转换为时间戳

5.将时间戳转换为年月日时分秒

6.计算明天、昨天的日期

7.计算xxx小时的时间

8.计算yyy天之后和之前的日期

9.传一个日期,计算是星期几

10.传一个日期,计算今天时今年的第多少天

'''

import time

import locale

def get_today():

      '''

      :return: 当天日期,格式:xxxx-xx-xx

      '''

    return  time.strftime("%Y-%m-%d",time.localtime())

def get_today_Chinese():

    '''

    :return: 当天日期,格式:xxxx年xx月xx日

    '''

    locale.setlocale(locale.LC_CTYPE,'chinese')#如果格式中有中文,需要先切换到中文模式

    return time.strftime("%Y年%m月%d日",time.localtime())

def get_now():

    '''

    :return: 当前时间:xx:xx:xx

    '''

    return  time.strftime("%H:%M:%S",time.localtime())

def get_now_chinese():

    '''

    :return: 当前时间:xx时xx分xx秒

    '''

    return  time.strftime("%H时%M分%S秒",time.localtime())

def get_today_now():

    '''

    :return: 当前时间,格式为:xxxx-xx-xx xx:xx:xx

    '''

    return  time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())

def get_today_now_chinese():

    '''

    :return: 当前时间,格式为:xxxx年xx月xx日xx时xx分xx秒

    '''

    return  time.strftime("%Y年%m月%d日 %H时%M分%S秒",time.localtime())

def date_to_timestamp(s):

    '''

    :param s: %Y-%m-%d格式的时间

    :return: s对应的时间戳

    '''

    return time.mktime(time.strptime(s,"%Y-%m-%d"))

def timestamp_to_strtime(s):

    '''

    :param s: 时间戳

    :return: s对应的时间字符串,格式为:%s年%s月%s日%s时%s分%s秒

    '''

    return "%s年%s月%s日%s时%s分%s秒"%(time.localtime(s).tm_year,time.localtime(s).tm_mon,time.localtime(s).tm_mday,

time.localtime(s).tm_hour,time.localtime(s).tm_min,time.localtime(s).tm_sec)

import datetime

def get_tomorrow():

    '''

    :return: 第二天日期(明天),格式为xxxx-xx-xx

    '''

    now = datetime.datetime.now()

    delta = datetime.timedelta(days=1)

    newTime = now + delta

    return str(newTime)[:-16]

def get_yestoday():

    '''

    :return: 前一天日期(昨天),格式为xxxx-xx-xx

    '''

    now = datetime.datetime.now()

    delta = datetime.timedelta(days=-1)

    newTime = now + delta

    return str(newTime)[:-16]

def get_hours_after(n):

    '''

    :param n:小时数,整数

    :return: n小时之后的时间,格式为xxxx-xx-xx xx:xx:xx

    '''

        if not isinstance(n,int):

            return None

        now = datetime.datetime.now()

        delta = datetime.timedelta(hours=n)

        newTime = now + delta

        return str(newTime)[:-7]

def get_days_after(n):

    '''

    :param n:天数,整数

    :return: n天之后的日期,格式为xxxx-xx-xx

    '''

    now = datetime.datetime.now()

    delta = datetime.timedelta(days=n)

    newTime = now + delta

    return str(newTime)[:-16]

def get_days_before(n):

    '''

    :param n:天数,整数

    :return: n天之前的日期,格式为xxxx-xx-xx

    '''

    now = datetime.datetime.now()

    delta = datetime.timedelta(days=-n)

    newTime = now + delta

    return str(newTime)[:-16]

def get_week(s):

    '''

    :param s: %Y-%m-%d格式的时间

    :return: 星期几

    '''

    return time.strptime(s,"%Y-%m-%d").tm_wday+1

def get_yday(d):

    '''

    :param s: %Y-%m-%d格式的时间

    :return: 当年的第几天

    '''

    return  time.strptime(d,"%Y-%m-%d").tm_yday

if __name__=="__main__":

    print(get_today())

    print(get_today_Chinese())

    print(get_now())

    print(get_now_chinese())

    print(get_today_now())

    print(get_today_now_chinese())

    print(date_to_timestamp('2019-03-14'))

    print(timestamp_to_strtime(time.time()))

    print(get_tomorrow())

    print(get_yestoday())

    print(get_days_after(2))

    print(get_days_before(2))
    
    print(get_week("2019-03-24"))

    print(get_yday('2019-03-24'))

    print(get_hours_after(5))

相关文章

  • Python日期和时间

    Python中内建的datetime模块,提供了datetime,date和time类型。 时间格式化 strft...

  • Python 日期和时间

    获取当前日期: 字符串转日期:转换YYYY-MM-DDTHH:mm:sZ格式日期,如2015-12-07T22:3...

  • Python日期和时间

    一、导入模块 二、时间获取 1.获取当前系统时间 2.获取简单格式化的时间 3.格式化时间 时间日期格式化符号:%...

  • python的时间和日期

    这里总结了python常用的时间和日期处理的几个函数,并封装了常用的时间操作。 引入的主要的包是time和date...

  • Python datetime函数常见用法总结

    Python datetime使用指导:操作时间、日期和时间区间 在 Python 中处理日期和时间是一个很麻烦的...

  • python4

    datetime是Python处理日期和时间的标准库。 获取当前日期和时间 我们先看如何获取当前日期和时间: >>...

  • Python标准库之time和datetime

    1、python3日期和时间 Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能。 Pyt...

  • python中日期和时间

    与时间处理的有关模块有哪些 time datetime calendar 在python中,通常用时间戳、格式化的...

  • Python 时间和日期模块

    time模块方法: time.time():获取当前时间的时间戳 时间戳转换为北京时间:http://tool.c...

  • 17 Python日期和时间

    在Python中,日期和时间的应用非常普遍。在实际应用中,大部分数据的记录和日志的处理都需要使用时间。这里将介绍P...

网友评论

      本文标题:python的时间和日期

      本文链接:https://www.haomeiwen.com/subject/plsbtctx.html