python之else语句和with语句

一、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))




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值