如何在Typst中实现日期运算?获取当日或下周五日期
在Typst中实现获取当日(周五)或下周五的日期
实现思路
和你Python里的逻辑完全一致:计算当前日期到下周五需要偏移的天数,再将这个天数加到当前日期上。Typst的datetime模块支持日期加法,通过days()函数创建时长对象就能实现日期偏移。
完整代码实现
#let get_next_friday() = { let today = datetime.today() // 计算需要偏移的天数:(目标周五的星期值 - 当前星期值) 取模7,避免负数 let offset_days = (5 - today.weekday()) % 7 // 偏移日期 let target_date = today + days(offset_days) // 格式化输出指定格式的日期 target_date.display("[month repr:long] [day] [year]") } // 调用使用 #show: get_next_friday
代码说明
datetime.today():获取当前本地日期时间today.weekday():返回当前星期的数值,Typst中星期一是1,周五是5,和你Python代码里的isoweekday()逻辑匹配(5 - today.weekday()) %7:计算从当前日期到下周五需要追加的天数,若当天已是周五,取模后结果为0,偏移后仍是当日today + days(offset_days):将计算好的天数加到当前日期上,得到目标日期display("[month repr:long] [day] [year]"):按指定格式输出日期,示例输出如October 20 2024
内容的提问来源于stack exchange,提问作者YoshiMbele
相关产品推荐
相关产品推荐

