Python根据时间获取周数与下周日期范围代码实例

叶初
叶初
发布时间:2026-10-13| 7人浏览过
原创

本文介绍如何使用Python标准库获取当前日期所在的周数,并详细演示如何计算下周的周一到周日具体日期。通过结合datetime、calendar及pandas库,提供完整的代码逻辑,帮助开发者快速实现日期周数统计与未来时间段的自动化生成。

Python获取当前周数与星期信息

在Python编程中,处理时间数据是常见需求。本节主要介绍如何获取当前日期在当年中的周数信息。

为了准确计算周数,我们需要引入time和datetime模块。首先,利用time.strftime('%W')可以直接获取当前日期是当年的第几周,该函数返回的是字符串格式的周数。其次,通过datetime.datetime.now().weekday()可以获取今天是星期几,返回值范围是0到6,其中0代表周一。此外,如果需要对特定日期进行周数查询,可以使用datetime.strptime将字符串转换为日期对象,再调用strftime('%W')来获取该指定日期属于当年的第几周。


import time
import datetime
# 获取今天是第几周
print(time.strftime('%W'))
# 获取当前是周几(0-6,0代表周一)
today=datetime.datetime.now().weekday()
# 获取指定日期属于当年的第几周
week=datetime.datetime.strptime('20190825','%Y%m%d').strftime('%W')

计算下周周一到周日的完整日期范围

除了获取当前周数,有时还需要计算未来某段时间的时间范围,例如获取下周的完整日期区间。这涉及到对日期进行递增操作,并判断周一和周日的具体时间点。


import datetime,calendar,pandas as pd
def get_N_day():
 # 获取当前日期
 today1 = datetime.date.today()
 today2 = datetime.date.today
 # 指定时间周期
 oneday = datetime.timedelta(days=1)
 oneweek = datetime.timedelta(days=7)
 # 获取周一和周日的判断条件(周一为0,周日为6)
 m1 = calendar.MONDAY
 m2 = calendar.SUNDAY
 # 获取下周周一的时间
 if today1.weekday() != m1:
  while today1.weekday() != m1:
   today1 += oneday
 else:
  today1+=oneweek
 # 获取下周周日的时间
 if today2.weekday() != m2:
  today2 += oneweek
  while today2.weekday() != m2:
   today2 += oneday
 else:
  today2 += oneweek
 # 转换时间形式
 nextMonday = today1.strftime('%Y%m%d')
 nextSunday = today2.strftime('%Y%m%d')
 # 获取下周七天的时间列表
 date_list = [d.strftime("%Y-%m-%d") for d in pd.date_range(nextMonday, nextSunday, freq="D")]
 # 转换呈现形式
 list_date=[]
 for i in date_list:
  one=i.split('-')
  time=['月','日']
  time.insert(0,one[1])
  time.insert(2,one[2])
  time1=''.join(time)
  list_date.append(time1)
 return list_date
print(get_N_day())

通过上述逻辑,我们可以轻松实现日期周数的查询与下周时间范围的生成,代码逻辑清晰且易于复用。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持本站。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。