如果我有一个函数说
from datetime import datetime import typer TODAYS_DATE = datetime.now() def main( s3_bucket: str, target_date: Optional[str] = TODAYS_DATE.isoformat(), region: str = "us-east-1"): """ pass if __name__ == "__main__": typer.run(main)
如何避免将日期时间强制转换为字符串?
typer文档没有说明这一点,但事实证明该库足够智能,您可以声明
from datetime import datetime import typer TODAYS_DATE = datetime.now() def main( s3_bucket: str, target_date: Optional[datetime] = TODAYS_DATE.isoformat(), region: str = "us-east-1"): """ pass if __name__ == "__main__": typer.run(main)
它产生了一个CLI选项,如
Options: --target-date [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S] [default: 2021-11-10 13:29:43.349936]
自动地