python - 如何使用 python 检查日期是否为空?

标签 python python-3.x amazon-web-services aws-lambda

startdateenddate 值来自 jenkin 到 lambda。 在此代码中,我尝试使用 event["start_date"] 和 event["end_date"] 获取值,并且工作正常,但如果 startdateenddate 不可用,那么代码应自动采用今天和昨天的日期。

我是Python新手,有人可以帮忙吗?

我尝试如下,但出现错误。 如果我提到“startdate 和 enddate is none”并将两个值设置为 none 那么它可以工作,但我需要实现代码中提到的,因为我将 AWS lambda 与 python 一起使用。

import datetime
from datetime import timedelta

dateformat = "%Y-%m-%d"
startdate = datetime.datetime.strptime("", dateformat)
enddate = datetime.datetime.strptime("", dateformat)
# Both startdate and enddate values come from Jenkin to lambda  - 
event["start_date"] and event["end_date"]
if (startdate and enddate) == "":
    startdate = datetime.date.today()
    enddate = startdate - datetime.timedelta(days = 1)
    print('yesterday : ', enddate)  
    print('Today : ', startdate)

当前错误输出:

Traceback (most recent call last):
  File "variable_value_change.py", line 10, in <module>
    startdate = datetime.datetime.strptime("", dateformat)
  File "C:\Users\336635743\AppData\Local\Programs\Python\Python37-32\lib\_strptime.py", line 577, in _strptime_datetime
    tt, fraction, gmtoff_fraction = _strptime(data_string, format)
  File "C:\Users\336635743\AppData\Local\Programs\Python\Python37-32\lib\_strptime.py", line 359, in _strptime
   (data_string, format))
ValueError: time data '' does not match format '%Y-%m-%d'

最佳答案

使用try- except block 。

例如:

try:
    startdate = datetime.datetime.strptime(event["start_date"], dateformat)
    enddate = datetime.datetime.strptime(event["end_Date"], dateformat)
except:
    startdate = datetime.date.today()
    enddate = startdate - datetime.timedelta(days = 1)

关于python - 如何使用 python 检查日期是否为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56329516/

相关文章:

python - 是否可以获取 XSD 中定义的 XML 节点类型?

python - 如何使用 mechanize 库执行 HEAD 请求?

python - Spacy 日语分词器

python - 在 Mac OS X 上的 python 2.7 和 python 3.5 之间切换

amazon-web-services - 在 SQS 中查找某些消息

amazon-web-services - 从 AWS CLI 更新 aws cloudfront 发行版时,TLSv1.2_2021 不再满足枚举值集

Python 委托(delegate)模式——如何避免循环引用?

oracle - 从 python 连接到 oracle 时 sys 用户登录被拒绝

amazon-web-services - 使用 AWS API Gateway 调用 AWS Lambda

python - 如何将参数传递给 Django 的 PasswordChangeForm 的 __init__ 函数