吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3311|回复: 15
收起左侧

[求助] python try高亮警告

[复制链接]
cqwcns 发表于 2020-12-21 16:49
我写了一段代码,用来限制用户输入规范的年月日,功能是实现了,但这个except总是高亮警告。
警告:PEP 8: E722 do not use bare 'except'异常子句太宽泛
当然这个可以忽略警告,但我还是希望解决,各位大佬请指教。

[Python] 纯文本查看 复制代码
import datetime

# 获取当前时间
timeNow = datetime.datetime.now()


# 用户输入通报时间
def input_int(title, default_value, min_int, max_int):
    while True:
        data = input(title) or str(default_value)
        try:
            input_data = eval(data)
            if type(input_data) == int and (min_int < input_data < max_int):
                return input_data
        except:
            pass


this_year = input_int('年(默认值' + str(timeNow.year) + '):', timeNow.year, 2018, 2022)
this_month = input_int('月(默认值' + str(timeNow.month) + '):', timeNow.month, 0, 13)
this_day = input_int('日(默认值' + str(timeNow.day) + '):', timeNow.day, 0, 32)
this_hour = input_int('时(默认值' + str(timeNow.hour) + '):', timeNow.hour, -1, 25)

this_time = datetime.datetime.strptime(
    str(this_year) + '-' + str(this_month) + '-' + str(this_day) + ' ' + str(this_hour) + ':00:00', "%Y-%m-%d %H:%M:%S")

# 获取通报当天23:59:59
time_last_this_time = this_time + datetime.timedelta(hours=23, minutes=59, seconds=59)

print(this_time)


微信图片_20201221164909.png

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

南岸 发表于 2020-12-21 17:10
可能出现的异常太多嘛
fortytwo 发表于 2020-12-21 17:10
本帖最后由 SailZhao520 于 2020-12-21 17:11 编辑

意思是只捕获了异常,没有对异常进行处理。
[Python] 纯文本查看 复制代码
if __name__ == '__main__':
    try:
        print(1)
    except Exception as e:
        print(e)

这样即可
 楼主| cqwcns 发表于 2020-12-21 17:30
SailZhao520 发表于 2020-12-21 17:10
意思是只捕获了异常,没有对异常进行处理。[mw_shl_code=python,true]if __name__ == '__main__':
    try ...

这样确实是不报错了,但如果不想print,怎么写比较好?谢谢
imyxuan 发表于 2020-12-21 17:38
[Python] 纯文本查看 复制代码
except Exception as e:
    print(e)
zhaoyf18 发表于 2020-12-21 17:42
大家一同学习学习。
woflant 发表于 2020-12-21 17:46
捕捉错误 pass忽略
[Python] 纯文本查看 复制代码
except Exception as err:
    pass
 楼主| cqwcns 发表于 2020-12-21 17:49
woflant 发表于 2020-12-21 17:46
捕捉错误 pass忽略

直接pass还是会警告。
woflant 发表于 2020-12-21 18:01
cqwcns 发表于 2020-12-21 17:49
直接pass还是会警告。

应该是要具体指定某些错误类型,不能用泛型错误,如Exception一类的
骑狗的猴子 发表于 2020-12-21 18:11
可以导入一些日志记录的模块,设置好记录的等级就可以了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 10:41

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表