成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Python之時(shí)間和日期使用小結(jié)

BigNerdCoding / 1923人閱讀

摘要:對(duì)于日期的操作可以說(shuō)是比較常見的了日期與格式化字符串互轉(zhuǎn),日期與時(shí)間戳互轉(zhuǎn),日期的加減操作等,下面主要介紹下常見的需求場(chǎng)景如何實(shí)現(xiàn)基本包引入主要需要引入時(shí)間和日期的處理包,后面的基本操作都是基于此獲取當(dāng)前時(shí)間獲取當(dāng)前時(shí)間,有幾種方式

對(duì)于日期的操作可以說(shuō)是比較常見的case了,日期與格式化字符串互轉(zhuǎn),日期與時(shí)間戳互轉(zhuǎn),日期的加減操作等,下面主要介紹下常見的需求場(chǎng)景如何實(shí)現(xiàn)

1. 基本包引入

主要需要引入時(shí)間和日期的處理包,后面的基本操作都是基于此

import datetime
import time
2. 獲取當(dāng)前時(shí)間

獲取當(dāng)前時(shí)間,有幾種方式,分別使用time和datetime來(lái)演示

a. time

獲取當(dāng)前時(shí)間,格式化為字符串輸出

now = time.strftime("%Y-%m-%d %H:%M:%S")
print(now)

獲取當(dāng)前時(shí)間,以時(shí)間戳方式輸出,結(jié)果為float類型,單位為s

now=time.time()
print(now)

b. datetime

直接調(diào)用now()函數(shù)獲取當(dāng)前時(shí)間,返回datetime類型對(duì)象

now = datetime.datetime.now()
print(now)

3. 時(shí)間戳轉(zhuǎn)datetime
函數(shù): datetime.datetime.fromtimestamp()

將時(shí)間戳轉(zhuǎn)換為datetime類型,因?yàn)楹笳呖梢赃M(jìn)行日期的計(jì)算(如常見的加減或者格式化)

# 獲取當(dāng)前的時(shí)間戳
now = time.time()
# 將時(shí)間差轉(zhuǎn)換為datetime對(duì)象
date = datetime.datetime.fromtimestamp(now)
print(date)

4. 時(shí)間戳轉(zhuǎn)格式化日期 a. time
函數(shù) time.strftime(format, localtime)time.localtime(timestamp)

借助time的time.strftime函數(shù)來(lái)實(shí)現(xiàn)轉(zhuǎn)換,這里還需要做一個(gè)額外的處理,將時(shí)間戳轉(zhuǎn)換為struct_time 對(duì)象

now = time.time()
# 首先格式化時(shí)間戳為struct_time對(duì)象,接著格式化輸出
time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(now))

b. datetime
函數(shù) datetime.datetime.fromtimestampdatetime.datetime.strftime()

借助前面的知識(shí)點(diǎn)即可實(shí)現(xiàn),先將timestamp轉(zhuǎn)換為datetime, 然后將datetime格式化為字符串

now=time.time()
date =datetime.datetime.fromtimestamp(now)
date.strftime("%Y-%m-%d %H:%M:%S")

5. 字符串轉(zhuǎn)時(shí)間戳
函數(shù) strptime(str) 與 time.mktime(struct_time)

前面格式化輸出字符串時(shí),主要利用的是strftime,這里則主要使用 strptime

now="2019-02-11 18:45:22"
struct_time=time.strptime(now , "%Y-%m-%d %H:%M:%S")
timestamp=time.mktime(struct_time)

6. 字符串轉(zhuǎn)datetime
函數(shù) datetime.datetime.strptime(str, format)

依然使用strptime函數(shù)來(lái)實(shí)現(xiàn)轉(zhuǎn)換

now="2019-02-11 18:45:22"
date=datetime.datetime.strptime(now, "%Y-%m-%d %H:%M:%S")
7. datetime 轉(zhuǎn)字符串
函數(shù) datetime.datetime.strftime(format)

利用strftime來(lái)實(shí)現(xiàn)

now = datetime.datetime.now()
now.strftime("%Y-%m-%d %H:%M:%S")

8. datetime 轉(zhuǎn)時(shí)間戳
函數(shù) datetime.datetime.timestamp()

結(jié)合前面的這個(gè)就比較好實(shí)現(xiàn)了

now = datetime.datetime.now()
now.timestamp()

9. datetime轉(zhuǎn)struct_time
now = datetime.datetime.now()
# 轉(zhuǎn)換為 struct_time 對(duì)象
t=now.timetuple()
# struct_time 輸出時(shí)間戳
timestamp=time.mktime(t)

10. 日期加減操作
函數(shù) datetime.timedelta

日期的加減操作,這里主要是datetime對(duì)象來(lái)操作,一個(gè)簡(jiǎn)單的例子如下

now = datetime.datetime.now()

# 前一小時(shí)
d1 = now - datetime.timedelta(hours=1)
print(d1.strftime("%Y-%m-%d %H:%S:%M"))

# 前一天
d2 = now - datetime.timedelta(days=1)
print(d2.strftime("%Y-%m-%d %H:%S:%M"))

# 上周日
d3 = now - datetime.timedelta(days=now.isoweekday())
print(d3.strftime("%Y-%m-%d %H:%S:%M"), " ", d3.isoweekday())

# 上周一
d31 = d3 - datetime.timedelta(days=6)
print(d31.strftime("%Y-%m-%d %H:%S:%M"), " ", d31.isoweekday())

# 上個(gè)月最后一天
d4 = now - datetime.timedelta(days=now.day)
print(d3.strftime("%Y-%m-%d %H:%S:%M"))

# 上個(gè)月第一天
print(datetime.datetime(d4.year, d4.month, 1))

11. 格式化符號(hào)
%y # 兩位數(shù)的年份表示(00-99)
%Y # 四位數(shù)的年份表示(000-9999)
%m # 月份(01-12)
%d # 月內(nèi)中的一天(0-31)
%H # 24小時(shí)制小時(shí)數(shù)(0-23)
%I # 12小時(shí)制小時(shí)數(shù)(01-12) 
%M # 分鐘數(shù)(00=59)
%S # 秒(00-59)
 
%a # 本地簡(jiǎn)化星期名稱
%A # 本地完整星期名稱
%b # 本地簡(jiǎn)化的月份名稱
%B # 本地完整的月份名稱
%c # 本地相應(yīng)的日期表示和時(shí)間表示
%j # 年內(nèi)的一天(001-366)
%p # 本地A.M.或P.M.的等價(jià)符
%U # 一年中的星期數(shù)(00-53)星期天為星期的開始
%w # 星期(0-6),星期天為星期的開始
%W # 一年中的星期數(shù)(00-53)星期一為星期的開始
%x # 本地相應(yīng)的日期表示
%X # 本地相應(yīng)的時(shí)間表示
%Z # 當(dāng)前時(shí)區(qū)的名稱
%% # %號(hào)本身

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/43188.html

相關(guān)文章

  • python -- time datetime小結(jié)

    摘要:小結(jié)基本時(shí)間戳本地時(shí)間帶格式時(shí)間帶格式可以獲取你想要的東西轉(zhuǎn)換時(shí)間戳和時(shí)間戳轉(zhuǎn)轉(zhuǎn)時(shí)間戳轉(zhuǎn)換字符串和轉(zhuǎn)換格式化字符串和時(shí)間戳不可以基本類關(guān)系圖日期和時(shí)間差值計(jì)算的第一個(gè)參數(shù)抽象類會(huì)用到?jīng)] [TOC] python -- time datetime小結(jié) time 基本 import time time.time() Out[3]: 1561107970.0175698 # 時(shí)間戳 tim...

    dack 評(píng)論0 收藏0
  • Python標(biāo)準(zhǔn)庫(kù)datetimedatetime模塊用法分析詳細(xì)解答

      小編寫這篇文章的主要目的,主要是給大家進(jìn)行講解關(guān)于Python相關(guān)內(nèi)容的事情,主要是涉及到一些標(biāo)準(zhǔn)庫(kù)里面的一些事情,比如會(huì)涉及到dateime相關(guān)的模塊用法問(wèn)題,下面就給大家做個(gè)比較詳細(xì)解答?! ?、日期時(shí)間對(duì)象  日期時(shí)間對(duì)象是指具有日期(年月日)和時(shí)間(時(shí)分秒)雙重屬性的實(shí)例  日期時(shí)間對(duì)象的類型為datetime.datetime  日期時(shí)間對(duì)象常用的屬性有年、月、日、時(shí)、分、秒、微秒 ...

    89542767 評(píng)論0 收藏0
  • python入門 django入門 (一)

    摘要:本人年開發(fā)經(jīng)驗(yàn),現(xiàn)就職于電信,因工作需要學(xué)習(xí),記錄自己的學(xué)習(xí)記錄。 本人java10年開發(fā)經(jīng)驗(yàn),現(xiàn)就職于電信,因工作需要學(xué)習(xí)python,記錄自己的學(xué)習(xí)記錄。后面也...

    hzc 評(píng)論0 收藏0
  • Python基礎(chǔ)(十)模塊

    摘要:是回調(diào)函數(shù),當(dāng)鏈接服務(wù)器和相應(yīng)數(shù)據(jù)傳輸完畢時(shí)觸發(fā)本函數(shù)可選。僅僅是針對(duì)的,在中,已經(jīng)沒(méi)有這個(gè)模塊了,取代它的是。由于以流式讀取文件,從而速度較快,切少占用內(nèi)存,但是操作上稍復(fù)雜,需要用戶實(shí)現(xiàn)回調(diào)函數(shù)。 編寫模塊 模塊是程序 模塊就是一個(gè)擴(kuò)展名為.py的Python程序。 編寫模塊 #!/usr/bin/env python # coding=utf-8 lang = python 引...

    jlanglang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<