精华内容
下载资源
问答
  • 使用python实现某天日期是否合法日期可以以标准形式输入,输出该日期,并给出是否合法。代码简单易懂。
  • # 判断输入是否有非法字符或者长度是否为8个数字 if datetime_str.isdigit() == False or len(datetime_str) != 8: print("输入格式不合法!请按照样例格式输入日期!") return False # 比较日期

    代码:

    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')) # 还未发生的标准输入格式
    

    运行结果:

    对应着五个输出哦~

    在这里插入图片描述

    展开全文
  • 1. 功能说明: 根据输入的日期信息,判断并输出相应的判断结果 2. 分析: 确定输入的年份是否为闰年 年份是 4 的倍数但不是 100 ...# 判断日期是否合法:输入格式:2021-3-9 date = input("日期 = ") leap = False #.
    
    

    1. 功能说明:

    根据输入的日期信息,判断并输出相应的判断结果

    2. 分析:

    • 确定输入的年份是否为闰年
      • 年份是 4 的倍数但不是 100 的倍数
      • 年份是 400 的倍数
    • 根据月份确定日期的上限
      • 1、3、5、7、8、10、12最多31天
      • 4、6、9、11最多30天
      • 2月
        • 闰年最多29天
        • 平年最多28天

    3. 代码

    # -*- coding:utf-8 -*-
    
    # 判断日期是否合法:输入格式:2021-3-9
    date = input("日期 = ")
    leap = False   # 判断是否为闰年
    legal = False  # 判断是否合法
    
    # 记录 30天和 31天的月份
    month1 = {1, 3, 5, 7, 8, 10, 12}
    month2 = {4, 6, 9, 11}
    
    # 将输入数据按 ‘-’ 分割
    year, month, day = (int(x) for x in tuple(date.split("-")))
    
    # 判断月份是否为闰年
    if year % 4 == 0 and year % 100 != 0 or year % 400 == 0:
        leap = True
    if month in month1:
        if 1 <= day <= 31:
            legal = True
    elif month in month2:
        if 1 <= day <= 30:
            legal = True
    elif month == 2:
        if not leap and 1 <= day <= 28:
            legal = True
        elif leap and 1 <= day <= 29:
            legal = True
    print("%d年%d月%d日是%s" % (year, month, day, "合法日期" if legal else "不合法日期"))
    
    

    参考文档:https://www.icourse163.org/learn/SUDA-1206947804?tid=1450431473&from=study#/learn/content?type=detail&id=1214940631&cid=1219118205

    展开全文
  • shell脚本-判断日期合法

    千次阅读 2017-09-14 22:59:00
    2019独角兽企业重金招聘Python工程师标准>>> ...

    用shell脚本判断输入的日期是否合法。就是判断日期是都是真实的日期,比如20170110就是合法日期,20171332就不合法。

    #!/bin/bash
    #Check the date true or false
    #Written by Adai
    read -p "Please input a date [eg:20170905] :" t
    d=`date +%Y%m%d`
    if [[ $t -eq $d ]]
    then
      echo "$t"
    else
      echo "Illegal date,please check your date!"
    fi
    

    阿铭

    #!/bin/bash
    #check date
    if [ $# -ne 1 ] || [ ${#1} -ne 8 ]
    then
        echo "Usage: bash $0 yyyymmdd"
        exit 1
    fi
    datem=$1
    year=${datem:0:4}
    month=${datem:4:2}
    day=${datem:6:2}
    if echo $day|grep -q '^0'
    then
        day=`echo $day |sed 's/^0//'`
    fi
    if cal $month $year >/dev/null 2>/dev/null
    then
        daym=`cal $month $year|egrep -v "$year|Su"|grep -w "$day"`
        if [ "$daym" != "" ]
        then
            echo ok
        else
            echo "Error: Please input a wright date."
        exit 1
        fi
    else
        echo "Error: Please input a wright date."
        exit 1
    fi
    
    

    转载于:https://my.oschina.net/adailinux/blog/1537625

    展开全文
  • 来源:https://www.cnblogs.com/dplearning/p/5737966.html 用time模块的strptime函数获取时间元组,如果成功为合法时间,反之为非法时间 1 def isVaildDate(self, date): 2 try: 3 if ":" in date: 4 ...

    来源:https://www.cnblogs.com/dplearning/p/5737966.html

     

    用time模块的strptime函数获取时间元组,如果成功为合法时间,反之为非法时间

    1 def isVaildDate(self, date):
    2         try:
    3             if ":" in date:
    4                 time.strptime(date, "%Y-%m-%d %H:%M:%S")
    5             else:
    6                 time.strptime(date, "%Y-%m-%d")
    7             return True
    8         except:
    9             return False 

    Python time strptime()方法


    描述

    Python time strptime() 函数根据指定的格式把一个时间字符串解析为时间元组。

    语法

    strptime()方法语法:

    time.strptime(string[, format])

    参数

    • string -- 时间字符串。
    • format -- 格式化字符串。

    返回值

    返回struct_time对象。

    说明

    python中时间日期格式化符号:

    • %y 两位数的年份表示(00-99)
    • %Y 四位数的年份表示(000-9999)
    • %m 月份(01-12)
    • %d 月内中的一天(0-31)
    • %H 24小时制小时数(0-23)
    • %I 12小时制小时数(01-12)
    • %M 分钟数(00=59)
    • %S 秒(00-59)
    • %a 本地简化星期名称
    • %A 本地完整星期名称
    • %b 本地简化的月份名称
    • %B 本地完整的月份名称
    • %c 本地相应的日期表示和时间表示
    • %j 年内的一天(001-366)
    • %p 本地A.M.或P.M.的等价符
    • %U 一年中的星期数(00-53)星期天为星期的开始
    • %w 星期(0-6),星期天为星期的开始
    • %W 一年中的星期数(00-53)星期一为星期的开始
    • %x 本地相应的日期表示
    • %X 本地相应的时间表示
    • %Z 当前时区的名称
    • %% %号本身

    实例

    以下实例展示了 strptime() 函数的使用方法:

    1 #!/usr/bin/python
    2 import time
    3 
    4 struct_time = time.strptime("30 Nov 00", "%d %b %y")
    5 print(type(struct_time))
    6 print("returned tuple: %s " %(str(struct_time)))
    7 
    8 #<class 'time.struct_time'>
    9 #returned tuple: time.struct_time(tm_year=2000, tm_mon=11, tm_mday=30, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=335, tm_isdst=-1) 
    1 print(time.strptime("2018-05-02 12:23:34","%Y-%m-%d %H:%M:%S"))
    2 
    3 #time.struct_time(tm_year=2018, tm_mon=5, tm_mday=2, tm_hour=12, tm_min=23, tm_sec=34, tm_wday=2, tm_yday=122, tm_isdst=-1)

     

    转载于:https://www.cnblogs.com/NoctisYang/p/8980943.html

    展开全文
  • 来源: ... http://www.runoob.com/python/att-time-strptime.html ...用time模块的strptime函数获取时间元组,如果成功为合法时间,反之为非法时间 def isVaildDate(self, date): try: ...
  • $当然这个表达式还不是很完善,只能做简单的切割,不能判断日期合法性,关于日期是否合法,我还是交给Python的时间功能来处理吧。根据上面的正则表达式,我写的DateParser类如下: 复制代码 代码如下:import re...
  • Python编程汇总

    千次阅读 2020-06-04 21:46:32
    Python基础知识 1. 介绍关于自己的一些详细信息 首先通过用户终端输入自己的学号、姓名、性别、出生日期、用户名、所修的课程和所选的教材等基本信息。 然后判断自己的出生年份是否为闰年、创建的用户名是否合法。 ...
  • 最复杂的点是对于二月输入是否合法判断, 从代码中看出我对于月份的判断格式是这样的: if false:     print(‘错误’) else:     print(‘日期’) 导致我进入了误区...
  • python编程求解答!

    2021-06-11 00:26:05
    构建一个函数def rightday,判断一个由三个参数构成的日期是否合法!若合法,返回True,否则返回False</p>
  • python cookbook(第3版)

    2016-01-06 22:24:38
    5.15 打印不合法的文件名 5.16 增加或改变已打开文件的编码 5.17 将字节写入文本文件 5.18 将文件描述符包装成文件对象 5.19 创建临时文件和文件夹 5.20 与串行端口的数据通信 5.21 序列化Python对象 第六章...
  • Python - 100天从新手到大师 作者:骆昊 说明:从项目上线到获得8w+星标以来,一直收到反馈说基础部分(前15天的内容)对新手来说是比较困难的,建议有配套视频进行讲解。最近把基础部分的内容重新创建了一个名为...
  • 正则表达式,又称规则表达式,是一个特殊的字符串序列,是由普通字符和特殊字符(元字符)组成的文字模式。通常被用来检索、替换那些符合该模式的...如:判断手机号是否合法,匹配日期等等。 元字符 ...
  • 判断有效日期 至少封装出4个函数 # coding=utf-8 # 判断用户输入是否合法 def is_legal_input(date): # 如果长度不为8或者不是纯数字,则重新输入 if len(date) != 8 or not date.isdigit(): return False else:...
  • 一、题目名称:“三天打鱼两天晒网 二、题目内容:中国有句俗语叫“三天打鱼两天晒网”。某人从2010年1月1日起开始...2.检验当前日期是否合法。 3.从2010年开始累加计算天数 3.1若当前年份小于输入年份 3.1.1若当前...
  • 问题描述 中国有句俗语叫“三天打鱼两天晒网”。某人从2010年1月1日起开始“三天打鱼两天晒网”,问... 1)用户键入日期判断输入日期是否合法; 2)若合法计算从2010年1月1日至输入日期经过的总天数sum,若不合法...
  • 题目内容 中国有句俗语叫“三天打鱼两天晒网”。某人从2010年1月1日起开始“三天打鱼...while语句判断输入日期合法性。 计算从2010年1月1日开始至指定日期共有多少天。 3.1 judgeyear( )函数判断输入年份是...
  • 三天打鱼两天晒网 一、题目名称:“三天打鱼两天晒网” 二、题目内容:中国有句俗语叫“三天打鱼两天晒网”。...2.判断当前日期是否合法。 3.除了本年外,对之前每一年遍历,判断是否闰年,是的话天数3...
  • 蟒蛇 之 正则表达式

    2020-12-11 20:44:06
    ⛽️ ????蟒蛇正则表达式 很全麦 正则表达式,又称规则表达式,是一个特殊的字符串序列,是由普通字符和特殊字符...如:判断手机号是否合法,匹配日期等等。 基础且全面的python斜体样式正则表达式 内容精炼简介 ...
  • 【ACM】第几天

    2020-11-07 19:20:52
    输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。 Output 对于每组输入数据,输出一行,表示该日期是该年的第几天。 Sample Input 1985/1...
  • 出版日期:2006 年12月 开本:16开 页码:662 版次:3-1 内容简介  本书全面深入地介绍了mysql的功能,主要内容包括mysql、php、apache、perl等组件的安装与功能简介,mysql等一些重要系统管理工具和用户操作界面...
  • // 或者像Python一样 if (表达式一) : . . . . . . elseif (表达式二) : . . . else : . . . endif ; Loops. while, do..while, for while (表达式) { . . . } do { . . . } while (表达式); for (表达式一; ...

空空如也

空空如也

1 2
收藏数 27
精华内容 10
关键字:

python判断日期合法

python 订阅