Python 根据时区/区域设置获取一周的开始



我想知道一周的开始是什么,但它应该根据特定的时区或区域设置。

我可以像这样检索一天开始的日期时间

now = datetime.now()
weekday = now.weekday()   # 0 if it is Monday
start_of_week = now.replace(day=now.day-weekday)

但是,如果我所在的国家/地区一周的开始是星期日(例如时区"亚洲/Tel_Aviv"(,这将不起作用。

有没有办法根据时区或区域设置使用 pytz 或任何其他库来获取一周的开始?

我不知道。

此信息不在 pytz 数据库中。它将在语言环境数据库中可用,但您的系统可能没有安装所有可能的语言环境(在 linux 系统上,语言环境 -a 显示其中的内容(。 理论上,您可以安装它们并在时区和区域设置之间构建一个转换器,然后从那里进行检查。

太复杂了,不符合我的口味。

我会手动执行此操作。 世界上只有这么多国家,其中大多数都使用星期一作为一周的第一天。只需构建一个包含大约 200 个条目的字典,您就可以从这里导入数据:http://chartsbin.com/view/41671

汉努

最新更新