代碼:
import datetime
from datetime import date
def verify_datetime(datetime_str):
# 判斷輸入是否有非法字符或者長度是否為8個數字
if datetime_str.isdigit() == False or len(datetime_str) != 8:
print("輸入格式不合法!請按照樣例格式輸入日期!")
return False
# 比較日期格式是否正確
try:
datetime.datetime.strptime(datetime_str, '%Y%m%d')
except ValueError:
print("輸入日期的格式不合法哦,請重新檢查")
return False
# 比較日期是否已經發生過了
strftimenow = datetime.datetime.strptime(date.today().isoformat(), "%Y-%m-%d")
strftime = datetime.datetime.strptime(datetime_str, "%Y%m%d")
if (strftimenow < strftime) == True:
return True
else:
print("你輸入的日期已發生過了阿!重寫!")
return False
呼叫函式:
print(verify_datetime('20191127-')) # 輸入含有非法字符
print(verify_datetime('20191206520')) # 輸入不是8位數字長度
print(verify_datetime('20151431')) # 不存在14月,輸入非法
print(verify_datetime('20121026')) # 20121026已經屬于過去的日期
print(verify_datetime('20811206')) # 還未發生的標準輸入格式
運行結果:
對應著五個輸出哦~

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/271574.html
標籤:python
