Python基础刻意练习——Day12:else 与 with 语句

Day1:变量、运算符与数据类型
Day2:条件与循环
Day3&4:列表与元组
Day5:字符串与序列
Day6&7:函数与Lambda表达式
Day8:字典与集合
Day9&10:文件与文件系统
Day11:异常处理
Day12:else 与 with 语句——>本文
Day13&14:类与对象
Day15&16:魔法方法
Day17:模块

一.else语句

1. if…else…

详见Day2:条件与循环,略

2.while…else…

放在循环外面,若循环顺利结束则执行(break跳出则不执行)

def MaxFactor(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('请输入一个数:'))
MaxFactor(num)
'''
请输入一个数:17
17是素数
'''
  • for…else…同理

3.try…except…else…

Day11:异常处理中已说过,略

二、with语句

with 语句可抽象出文件操作中频繁使用的try、except、finally相关的细节,自动检查是否关闭文件
减少代码量

try:
    with open(r'data.txt','r+') as f:
        for line in f:
            print(line,end=' ')
except OSError as e:
    print('出错',e)
#出错 [Errno 2] No such file or directory: 'data.txt'

p.s.
上述代码中f是一个TextIOWrapper类
需通过for语句输出其文本内容
data.txt内容如下:

python
data
try:
    with open(r'practise/data.txt','r+') as f:
        print(type(f))
        for line in f:
            print(line,end=' ')
except OSError as e:
    print('出错',e)
'''
<class '_io.TextIOWrapper'>
python
 data 
'''
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值