作者: forjie | 来源:发表于2019-10-24 17:30 被阅读0次

包介绍,两个包都是对周进行操作

datetime.isocalendar()
isoweek

1. datetime.isocalendar

操作对象是datetime对象

from datetime import datetime
now = datetime.now()
print(now.isocalendar())
==> 返回的是一个元祖,分别是年份,时间的周数,最后是周几,4就是周4
(2019, 43, 4)

另外还有2个直接求当前是周几

# 以周一为起始时间
datetime.isoweekday()   
==>4 
# 以周日为起始时间
datetime.weekday()
==>3

2. datetime.strptime 格式化时间,返回的是字符串

参数请参考 https://www.runoob.com/python/att-time-strptime.html

ps:这个返回的周数在2019年比ioscalendar少一周,
使用时需要注意,这个方法每年的周数是在变化的,在测试每年的1月1号,会产生不一样的结果,2017-01-01是2017-00,
2018-01-01是2018-01,
2019-01-01又是2019-00
这可能就是比ioscalendar方法少一周的原因,建议使用isocalendar,
在月份上没问题

print(now.strftime("%Y-%W"))
==>
2019-42

3.isoweek包

使用前需要pip下载
源码中也有很多调用了isocalendar方法,是最周的补充
详细 : https://pypi.org/project/isoweek/

from isoweek import Week
# 里面的参数是2019年,30周
w=Week(2019,30)
print(w)
==>
2019W30

# 可以直接对当前周进行加法
print(w+1)
==>
2019W31

# 可以直接算出当前时间是第几周,里面的值必须是datetime类型
today = datetime.date.today()
Week.withdate(today)
==>
2019W43

# 本周
Week.thisweek()
==>
2019W43

# 得到某年的每一周
weeks=Week.weeks_of_year(2019)
for week in weeks:
  print(week)
===>
2019W01
2019W02
2019W03
2019W04
2019W05
...

# 获取这周的周一,里面还有周二到周日
print(w.monday())
==>
2019-07-22

里面还有一些其他方法,自己去看吧

相关文章

  • 周周周周周记?

    周记, 天呢,我我我我我吓得结巴,我还沉浸在放假的美好气氛里,完全忘记周记这种东西,我也就只能这样随便写写...

  • 周周周

    又到了一年两度最尴尬的班聚时刻,有人沉默不语,有人郁郁寡欢,几个没办法容许尴尬沉默的同学使劲浑身解数拼命带动气氛...

  • 周周周周周记? (3)

    图书馆N日游 这几天天天泡图书馆,这是一个格外神奇的图书馆,格外安静,前几天还分外安静的图书馆,在这几天进...

  • 周周周周周记? (4)

    幸福有时就像一杯水,平淡时时滋润着你的心田;幸福有时就像一粒种子,在我们的心头生根、发芽、成为我们生活中的一部分。...

  • 周周周周周记? (5)

    蓝天白云, 迷迷蒙蒙地在雾丛中探寻,只得困于一个狭小的世界里。这不是我的理想天堂。我渴望那片迷雾过后的蓝天明亮的瞳...

  • 周周周周周记? (6)

    创造奇迹的我们 致广大学生的一封信: 是否还在为没有写完的暑假作业发愁?是否在为了明天不被作业逼死?不要小看...

  • 周周周周周记? (2)

    进击的本子~~ 这年头买个本子都不容易,我只是想默默的买一个正儿八经的本子!啊!(喊出了猪叫) ...

  • 怎么爱你

    周周周周周周 迟钝 清高 坚强 独立 怎么爱你

  • 大杰伦,生日快乐

    周周周周 杰杰杰杰 伦伦伦伦 周 杰 伦 伦 周周周周 杰杰杰杰 伦 伦...

  • 2018-09-13

    周是周周的周 是年年有余,周周复始的周

网友评论

      本文标题:

      本文链接:https://www.haomeiwen.com/subject/snddvctx.html