python学习 异常的相关处理/if的各种真假判断

#异常处理
try:
    # print(num)
    # print(1/0)
    open('hhhhh','r')
    print('------1-------')
except (NameError,FileNotFoundError):
    print('如果捕获到异常后做的处理')
except Exception as msg:
    print('如果用了Exception,那么意味着只要上面的except没有捕获到异常,这个except一定会捕获到')
    print(msg)
else:
    print('没有异常才会执行的功能')
finally:
    print('最终都要执行的功能')

#抛出自定义异常 #示例一: class ShortInputError(Exception): def __init__(self,input_valeu,rule_value): self.input_value=input_valeu self.rule_value=rule_value try: s=input('请输入:') if len(s)<3: raise ShortInputError(len(s),3) except ShortInputError as msg: print('输入的长度是:{},规定的长度是{}'.format(msg.input_value,msg.rule_value)) else: print('没有异常发生') #示例二: def division(x,y): if y==0: raise ZeroDivisionError('错了') try: division(10,0) except Exception as msg: #也可用BaseException、ZeroDivisionError print(msg) #异常处理中抛出异常 class Test(object): def __init__(self,switch): self.switch=switch def clasc(self,a,b): try: return a/b except Exception as result: if self.switch: print('捕获开启,已经捕获到了异常,信息如下:') print(result) else: #重新抛出这个异常,此时就不会被这个异常处理捕捉到,从而触发默认的异常处理 raise a=Test(True) a.clasc(11,0) a=Test(False) a.clasc(11,0)

 

#
if 0:
    print('hh')

if []:
    print('hh')

if {}:
    print('hh')

if "":
    print('hh')

if None:
    print('hh')
    
#
if ['1']:
    print('hh')

if [1]:
    print('hh')

if {1}:
    print('hh')

if "1":
    print('hh')

 

posted on 2019-07-31 23:08  cherry_ning  阅读(617)  评论(0)    收藏  举报

导航