python2.x time模块和datetime模块常用函数

time模块:
        time模块用于取得Unix纪元时间戳,并加以处理。计算机的系统时钟设置位特定的日期、时间和时区。内置的time模块让Python程序能读取系统时钟的当前时间。
        在time模块中,time.time()和time.sleep()函数是最有用的模块。

   time.time()函数:返回一个浮点数,表示当前时刻的Unix纪元时间戳

        1970年1月1日0点,即协调世界时间(UTC).time.time()函数返回自那一刻以来的秒数,是一个浮点值,这个数字称为UNIX
        纪元时间戳。

   time.sleep(seconds)函数:让程序暂停seconds参数指定的秒数

        如果需要让程序暂停一下,就调用time.sleep()函数,并传入希望程序暂停的秒数
        time.sleep(seconds)函数将阻塞(也就是说,它不会返回或让程序执行其他代码),直到传递给time.sleep()的秒数流逝。

        请注意,在IDLE中按Ctrl-C 不会中断time.sleep()调用。IDLE会等待到暂停结束,再抛出KeyboardInterrupt异常。

        round()函数按照指定的精度四舍五入到一个浮点数。只要传入要舍入的数字,再加上可选的第二行参数,指明需要传入到小数点后多少位。
        如果省略第二个参数,round()将数字四舍五入到最接近的整数。

 

datetime模块:
        以方便的格式显示日期,或对日期进行算术运算,(搞清楚205天前是什么日期,或123天后是什么日期)就应该用datatime模块。datetime模块有自己的datetime数据类型。datetime值表示一个特定的时刻。

 import datetime
 print datetime.datetime.now()

  datetime.datetime.now()函数:返回当前时刻的datetime对象

       返回一个datetime对象,表示当前的日期和时间,根据你的计算机的时钟。这个对象包含当前时刻的年、月、日、时、
       分、秒和微妙。

  datetime.datetime(year,month,day,hour,minute,second)函数:返回参数指定的时刻的datetime对象

       向它传入代表年、月、日、时、分、秒的整数,得到特定时刻的datetime对象。这些整数将保存在datetime对象的year、month、day、hour、minute、second属性中。           

import datetime
dt = datetime.datetime(2018,12,12,16,10,0)  #2018-12-12 16:10:00
print dt.year,dt.month,dt.day,dt.hour,dt.minute,dt.second

  datetime.datetime.fromtimestamp(epoch)函数:返回epoch时间戳参数表示的时刻的datetime对象。

        Unix纪元时间戳可以通过datetime.datetime.fromtimestamp(),转换为datetime对象。datetime对象的日期和时间将根据本地时区转换。

        datetime对象可以用比较操作符进行比较(==,> , <)。

        timedelta数据类型:

  datetime.timedelta(weeks,days,hours,minutes,seconds,milliseconds,microseconds)函数:返回一个表示一段时间的  timedelta对象。

        该函数的关键字参数都是可选的,不包括month或year.

        datetime模块还提供了timedelta数据类型,它表示一段时间,而不是一个时刻

import datetime

delta = datetime.timedelta(days=11, hours=10, minutes=9, seconds=8)
print delta.days,delta.seconds,delta.microseconds
print delta.total_seconds()
print str(delta)

         要创建timedelta对象,就用datetime.timedelta()函数。
         datetime.timedelta()函数接受关键字参数weaks,days,hours,minutes,seconds,milliseconds,microsenconds
         没有month和year关键字参数,因为月和年是可变的时间,依赖特定的月份或年份。

         timedelta对象拥有的总时间以天,秒,微妙来表示。这些数字分别保存在days,seconds,microseconds属性中。

   total_seconds()方法:用于timedelta对象,返回timedelta对象表示的秒数。返回以秒表示的时间。

        将一个timedelta对象传入str(),将返回格式良好的、人类可读的字符串表示。
        算数运算符可以用于对datetime值进行日期运算:           

import datetime

dt = datetime.datetime.now()
thousand_days = datetime.timedelta(days = 1000)
print dt + thousand_days

       利用+和-运算符,timedelta对象与datetime对象或其他timedelta对象相加或相减。
       利用*和/运算符,timedelta对象可以乘以或除以整数或浮点数。

       暂停直至特定日期:
        
       time.sleep()方法可以暂停程序若干秒。利用一个while循环,可以让程序暂停,知道一个特定的日期。     

import datetime, time

hallo_ween2016 = datetime.datetime(2016,10,31,0,0,0)
while datetime.datetime.now() < hallo_ween2016:
    time.sleep(1)

      将datetime对象转换为字符串:
            利用strftime()方法,可以将datetime对象显示为字符串。(strftime()函数名中的f表示格式,format)
            strftime(format)方法:返回一个字符串,用format字符串中的定制格式化来表示datetime对象表示的时间。
            该strftime()方法使用的指令类似于Python的字符串格式化。

            %Y              带世纪的年份,例如‘2014’
            %y              不带世纪的年份,‘00’至‘99’ 
            %m              数字表示的月份,‘01’至‘12’
            %B              完整的月份,例如‘Novermber’
            %b              简写的月份,例如‘Nov’
            %d              一月中的第几天,‘01’至‘31’
            %j              一年中的第几天,“001”至“366”
            %w              一周中的第几天,“0”周日至“6”周六
            %A              完整的周几,例如“Monday”
            %a              简写的周几,例如“Mon”
            %H              小时(24小时时钟),“00”至“23”
            %I              小时(12小时时钟),“01”至“12”
            %M              分,“00”至“59”
            %S              秒,“00”至“59”
            %p              'AM'或'PM'
            %%              ‘%’ 字符

            向strftime()传入一个定制的格式化字符串,其中包含格式化指定(以及任何需要的斜线、冒号等),
            strftime()将返回一个格式化的字符串,表示datetime对象的信息

        将字符串转换成datetime对象:
            如果有一个字符串的日期信息,如'2015/10/21 16:29:00'或 'October 21,2015',需要将它转换为datetime
            对象,就用datetime.datetime.strptime()函数,strptime()与strftime()相反。
            定制的格式字符串使用相同的指令,像strftime()一样。必须将格式字符串传入strptime(),这样它就知道如何解析和
            理解日期字符串(strptime()函数名中p表示解析,parse)

            datetime.datetime.strptime(参数1,参数2)
            参数1:'2015/10/21 16:29:00' 日期字符串
            参数2:'%Y/%m/%d %H:%M:%S' 定制格式化字符串
            带有日期信息的字符串必须准确匹配定制的格式字符串,否则Python将抛出ValueError异常。

            datetime.datetime.strptime(time_string, format)函数:返回一个datetime对象。
            
        Python中的时间函数:
            在Python中,日期和时间可能涉及好几种不同的数据类型和函数。
            以下表示时间的3种不同类型的值:
            1.Unix 纪元时间戳(time模块中使用)是一个浮点值或整型值,表示自1970年1月1日午夜0点(UTC)以来的秒数。
            2.datetime对象(datetime模块)包含一些整型值,保存在year,month,day,hour,minute,second等属性中。
            3.timedelta对象(属于datetime模块)表示一段时间,而不是一个特定的时刻。

你可能感兴趣的:(python)