美文网首页python入门教程
python基础类型(一)日期格式转换

python基础类型(一)日期格式转换

作者: Artoriax | 来源:发表于2018-10-27 15:03 被阅读50次

    注意:

    • 字符串中的某个字符不能直接赋值更改
    • 需要判断输入的日期长度
    • 需要判断日期连接符的正确性
    • 需要判断输入是否为数字
      改动:
    • 不要使用str作为变量名
    • 使用raise ValueError('errors!')抛出错误
    • 将检查和拼接放在一个函数中
    def date_trans(s):
        if (len(s) == 10):
            for i in range(0, 10):
                if (i != 4 and i != 7):
                    if not (s[i] >= '0' and s[i] <= '9'):
                        raise ValueError('error!')
                else:
                    if not (s[i] == '-' or s[i] == '/' or s[i] == '.'):
                        raise ValueError('error!')
            return s[0 : 4] + '-' + s[5 : 7] + '-' + s[8 : 10]
        if (len(s) == 8):
            for i in range(0, 8):
                if not (s[i] >= '0' and s[i] <= '9'):
                    raise ValueError('error!')
            return s[0 : 4] + '-' + s[4 : 6] + '-' + s[6 : 8]
        else:
            raise ValueError('error!')
    s = input()
    print(date_trans(s))
    
    

    相关文章

      网友评论

      • 渔父歌:完成了基本功能,有几点不足:
        1. str是 python关键字不能用作变量名
        2. 检查参数合法性应该是 date_trans的工作,不应该在函数外面进行,试着将全部代码封装为一个函数
        3. 可以使用 `raise ValueError('error!')` 来抛出错误

      本文标题:python基础类型(一)日期格式转换

      本文链接:https://www.haomeiwen.com/subject/cxjdtqtx.html