網站首頁 編程語言 正文
isoweekday和weekday的區別
import datetime datetime.datetime.now() 表示當前時間 datetime.datetime.now().isoweekday() # 返回1-7,代表周一到周日,當前時間所在本周第幾天; datetime.datetime.now().weekday() # 返回的0-6,代表周一到周日
另外,標準格式 %w 中,1-6表示周一到周六,0代表周日
import datetime now_time = datetime.datetime.now() # 當前時間 print(now_time) day_num = now_time.isoweekday() # 當前時間所在本周第幾天 print(day_num) monday = (now_time - datetime.timedelta(days=day_num-1)) # 本周周一時間 print(monday) ---------- 2019-06-20 09:45:07.349007 4 2019-06-17 09:45:07.349007
datetime.date類介紹
date類是一個日期類,由年、月、日組成。
由于Python也是面向對象編程語言,所以針對類,就會有構造函數,該類的構造函數如下:?
class datetime.date(year, month, day):?
-
year
: 表示年,范圍[MINYEAR, MAXYEAR],即[1, 9999]? -
month
: 表示月,范圍[1, 12]? -
day
:一月中第幾天,最大值根據給定的year,month參數來決定。例如閏年2月份有29天?
一、date對象所能表示的最大最小日期,返回的是datetime.date類型的對象
>>> import datetime >>> datetime.date.max datetime.date(9999, 12, 31) >>> print datetime.date.min 0001-01-01 >>>
二、date.today() 函數:返回一個當前本地日期的date類型的對象
>>> datetime.date.today() datetime.date(2018, 1, 16) >>> print datetime.date.today() 2018-01-16 >>>
三、date.fromtimestamp()函數:根據給定的時間戳,返回一個date對象
>>> import datetime >>> import time >>> now=time.time() >>> print now 1516110787.69 >>> s=datetime.date.fromtimestamp(now) >>> s datetime.date(2018, 1, 16) >>> print s 2018-01-16 >>>
四、date.weekday()函數:參數必須是一個date類型的對象,返回該日期是一周中的第幾天。返回值是一個整型。星期一,返回0;星期二,返回1。。。
>>> s=datetime.date.today() >>> print s 2018-01-16 >>> s datetime.date(2018, 1, 16) >>> type(s) <type 'datetime.date'> >>> d=datetime.date.weekday(s) >>> d 1 >>> print d 1 >>> type(d) <type 'int'> >>>
五、date.isoweekday()函數:該函數需要一個datetime.date類型的參數。返回weekday中的星期幾,星期一,返回1;星期二,返回2;以此類推。
>>> s=datetime.date.today() >>> print s 2018-01-16 >>> s datetime.date(2018, 1, 16) >>> d=datetime.date.isoweekday(s) >>> d 2 >>> type(d) <type 'int'> >>>
六、date.isocalendar()函數:該函數需要一個datetime.date類型的參數。返回date類型對象中的year(年),week(周),weekday(一周中的第幾天),返回值是一個元組
>>> s=datetime.date.today() >>> print s 2018-01-16 >>> s datetime.date(2018, 1, 16) >>> d=datetime.date.isocalendar(s) >>> d (2018, 3, 2) >>> print d (2018, 3, 2) ? ----代表2018年中的第3周,第三周中的第2天 >>> type(d) <type 'tuple'> >>>
>>> s=datetime.date(2018,1,14) >>> s datetime.date(2018, 1, 14) >>> print s 2018-01-14 >>> d (2018, 3, 2) >>> d=datetime.date.isocalendar(s) >>> d (2018, 2, 7) ? ? ----代表2018年中的第3周,第三周中的第7天 >>>
七、date.strftime(fmt) 返回自定義格式的時間字符串。fmt是自定義的時間格式
>>> a=datetime.date.today() >>> a datetime.date(2018, 1, 16) >>> b=a.strftime("%Y-%m-%d %H:%M:%S") >>> b '2018-01-16 00:00:00' >>> print b 2018-01-16 00:00:00 >>> type(b) <type 'str'> >>>
八、.replace(year, month, day):生成一個新的日期對象 ?用參數指定的年,月,日代替原有對象中的屬性。(原有對象仍保持不變)
>>> date1 datetime.date(2018, 1, 16) >>> date_new=date1.replace(year=2017) >>> date_new datetime.date(2017, 1, 16) >>> date_new=date1.replace(day=30) >>> date_new datetime.date(2018, 1, 30) >>>?
九、日期的其他操作--日期加上一個時間間隔(datetime.timedela類的對象)
>>> now=datetime.date.today() >>> now datetime.date(2018, 1, 16) >>> print now 2018-01-16 >>> b=datetime.timedelta(days=10) >>> b datetime.timedelta(10) >>> type(b) <type 'datetime.timedelta'> >>> print b 10 days, 0:00:00 >>> print now+b 2018-01-26 >>> print now-b 2018-01-06 >>> print now-b-b 2017-12-27 >>>
十、日期的其他操作--兩個date類型對象相減。返回兩個日期的間隔對象,即:datetime.timedelta類型的對象
>>> date1=datetime.date.today() >>> date2=date1.replace(day=19) >>> print date1 2018-01-16 >>> print date2 2018-01-19 >>> print type(date1),type(date2) <type 'datetime.date'> <type 'datetime.date'> >>> print date2-date1 3 days, 0:00:00 >>> print date1-date2 -3 days, 0:00:00 >>> print date2+datetime.timedelta(days=35) 2018-02-23 >>> print type(date2-date1) <type 'datetime.timedelta'> >>>
十一、日期的其它操作--比較日期大小
date1 < date2 返回比較結果布爾值,真返回True,假返回False?
原文鏈接:https://blog.csdn.net/weixin_42009030/article/details/92968949
相關推薦
- 2022-05-09 如何利用python讀取圖片屬性信息_python
- 2022-07-06 python的import?機制是怎么實現的_python
- 2022-07-10 query類型對應的請求方式params
- 2022-04-17 aspx頁面報“XPathResult未定義”的解決方法
- 2022-09-04 mat矩陣和npy矩陣實現互相轉換(python和matlab)_python
- 2022-08-03 GoFrame?ORM原生方法操作示例_Golang
- 2022-07-21 UNION 和 UNION ALL的區別
- 2022-07-29 Redis?key-value亂碼的解決_Redis
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支