这篇文章主要介绍了python中isoweekday和weekday的区别及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
>>> 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)
datetime.date(2018, 1, 16)
>>> print s
2018-01-16
四、date.weekday()函数:参数必须是一个date类型的对象,返回该日期是一周中的第几天。返回值是一个整型。星期一,返回0;星期二,返回1。。。
>>> s=datetime.date.today()
>>> print s
2018-01-16
datetime.date(2018, 1, 16)
>>> type(s)
<type 'datetime.date'>
>>> d=datetime.date.weekday(s)
>>> print d
>>> type(d)
<type 'int'>
五、date.isoweekday()函数:该函数需要一个datetime.date类型的参数。返回weekday中的星期几,星期一,返回1;星期二,返回2;以此类推。
>>> s=datetime.date.today()
>>> print s
2018-01-16
datetime.date(2018, 1, 16)
>>> d=datetime.date.isoweekday(s)
>>> type(d)
<type 'int'>
六、date.isocalendar()函数:该函数需要一个datetime.date类型的参数。返回date类型对象中的year(年),week(周),weekday(一周中的第几天),返回值是一个元组
>>> s=datetime.date.today()
>>> print s
2018-01-16
datetime.date(2018, 1, 16)
>>> d=datetime.date.isocalendar(s)
(2018, 3, 2)
>>> print d
(2018, 3, 2) ----代表2018年中的第3周,第三周中的第2天
>>> type(d)
<type 'tuple'>
>>> s=datetime.date(2018,1,14)
datetime.date(2018, 1, 14)
>>> print s
2018-01-14
(2018, 3, 2)
>>> d=datetime.date.isocalendar(s)
(2018, 2, 7) ----代表2018年中的第3周,第三周中的第7天
七、date.strftime(fmt) 返回自定义格式的时间字符串。fmt是自定义的时间格式
>>> a=datetime.date.today()
datetime.date(2018, 1, 16)
>>> b=a.strftime("%Y-%m-%d %H:%M:%S")
'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()
datetime.date(2018, 1, 16)
>>> print now
2018-01-16
>>> b=datetime.timedelta(days=10)
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类型的对象