python中与时间有关的对象-datetime、time、date
一、time模塊
1.time.strptime :將時間字符串轉化為時間類型
格式:time.strptime(string[string[, format])
結果可以利用利用time.tm_year 返回年份,其余雷同。
#例子 >>> t = time.strptime("2018-2-2", "%Y-%m-%d") >>> t time.struct_time(tm_year=2018, tm_mon=2, tm_mday=2, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=33, tm_isdst=-1) >>> t.tm_year2.time.strftime:將時間類型轉化為指定格式的字符串
# 返回當前時間 >>> time.strftime("%Y-%m-%d") '2018-03-08'3、time.sleep(secs) :在給定的秒數內掛起調用的線程執行,也就是讓線程休眠secs秒
4、時間戳轉為時間格式 time.localtime([sec])
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' >>> import time >>> t = 1527138892.000 >>> a = time.localtime(t) >>> a time.struct_time(tm_year=2018, tm_mon=5, tm_mday=24, tm_hour=13, tm_min=14, tm_sec=52, tm_wday=3, tm_yday=144, tm_isdst=0) >>> time.strftime("%Y/%m/%d %H:%M",a) '2018/05/24 13:14'5、獲取時間戳 time.time()
>>> time.time() 1527139949.55246856、獲取時間戳對應的時間
1、time.ctime([sec])
– 傳入的參數為時間戳
– 如果不穿參數,則以當時的時間戳為準
2、time.asctime(args)
– 傳入參數為time.localtime()轉化化后的值
time.ctime([sec]) 與 time.asctime(time.localtime([esc])) 相同
>>> t = 1527139949.5524685 >>> time.ctime(t) 'Thu May 24 13:32:29 2018'>>> time.ctime() 'Thu May 24 13:33:13 2018'二、datetime 模塊
1、datetime.date() : 可以傳入一個時間元組,返回一個date類型的時間
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' c = datetime.date(2018,10,2) print(c) #datetime.date(2018, 10, 2)2、date.timetuple(): 返回一個時間的元組
分別為 (年,月,日,小時,分鐘,秒,周幾,一年中的第幾天,DST標記)。可以利用 date.timetuple().tm_year 獲取年份,其余雷同。
>>> date_time = datetime.date(1971,12,1) >>> date_time datetime.date(1971, 12, 1)>>> date_time.timetuple() time.struct_time(tm_year=1971, tm_mon=12, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=335,tm_isdst=-1)3、timedelta():表示時間的間隔,可用來計算時間上的差值,適用于datetime于date類型,如果是time類型,則會報錯。
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:579817333 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' import datetime>>> today = datetime.date.today() >>> three_day = datetime.timedelta(days=3) >>> today + three_days datetime.date(2018, 3, 11)>>> today = datetime.datetime.now() >>> three_days = datetime.timedelta(days=3) >>> today + three_days datetime.datetime(2018, 3, 11, 21, 52, 23, 587921)注:timedalta的參數可以是 周(weeks)天(days),小時(hours),分鐘(minutes),秒(seconds),微秒(microseconds)
做運算的時候可能會出現時間的冒出,應用時應該掌握好范圍。
三、date對象
1、datetime.date.today()
返回當前本地的日期。這相當于date.fromtimestamp(time.time())。
datetime.date.today() #返回:datetime.date(年,月,日)2、date類型的對象的方法(以下date代表date類型的對象):
1、date.year #返回date對象對應的年份
2、date.month #返回date對象對應的月份
3、date.day#返回date對象對應的天數
4、date.replace(year, month, day) :根據參數返回新的日期
5、date.weekday() 返回一周中的第幾天,0代表周一,6代表周日
6、date.isoweekday() 返回星期幾,周一是1,周日是7
7、date.isocalendar()返回一個3元組 (ISO year, ISO week number, ISO weekday) 年,一年中的第幾周,一周中的第幾天
8、date.isoformat() 返回 格式‘YYYY-MM-DD’表示日期的字符串。
>>> datetime.date(2018, 12, 4).isoformat() '2018-12-04'9、date.ctime()返回表示日期的字符串。
>>> datetime.date(2018, 1, 1).ctime() 'Mon Jan 1 00:00:00 2018'10、date.strftime(format)
返回一個表示日期的字符串,由顯式的格式字符串控制。引用小時、分鐘和秒的格式代碼的值將為0。
>>> datetime.date(2018, 1, 1).strftime("%Y-%m-%d") '2018-01-01'總結
以上是生活随笔為你收集整理的python中与时间有关的对象-datetime、time、date的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 中将大列表拆分成小列表
- 下一篇: PHP 与Python 读取大文件的区别