一、else语句
1、if...else...:要么怎样,要么不怎样
2、和循环语句for or while 构成:干完了能怎样,干不完就别想怎样的句式
2.1)只有在循顺利执行完成后,才会执行else语句;如果使用break跳出了循环,那么else语句不会执行
例如:
def showMaxFactor(num): count = num//2 while count >1: if num % count ==0: print('%d最大的约数是%d'%(num,count)) break count -=1 else: print('%d是素数'%num) num= int(input('请输入一个数:')) showMaxFactor(num)
3、还可以和异常处理进行搭配:么有问题,那就干吧
3.1)如果有异常则会打印异常语句
try: int('abc') except ValueError as reason: print('出错啦:'+str(reason)) else: print('没有任何异常') #由于出现了异常因此打印出来的是:出错啦:invalid literal for int() with base 10: 'abc'
3.1)如果没有异常则会打印else语句:
try: int('123') except ValueError as reason: print('出错啦:'+str(reason)) else: print('没有任何异常') #没有报错则执行了else,打印结果为:没有任何异常
二、简洁的with语句:使用with打开文件后,后面会自动关闭文件,不用再调用close方法
try: f = open('My_File.txt') # 当前文件夹中并不存在"My_File.txt"这个文件T_T print(f.read()) except OSError as reason: print('出错啦:' + str(reason)) finally: if 'f' in locals(): # 如果文件对象变量存在当前局部变量符号表的话,说明打开成功 f.close()
try: with open('E:\\teest.txt','r') as f: print(f.read()) except OSError as reason: print('出错啦:' + str(reason))