【有书共读11】零压力学Python读书笔记08

第11章:操作文件

介绍文件操作之前我们先来简单看一下os(系统模块)
# os模块
import os  # 导入os模块----python的标准库,无需安装

# os.listdir()  以列表的形式返回指定目录下的所有文件(文件夹)
print(os.listdir('../'))    # 列出当前路径的上一层路径的所有文件

# os.mkdir(path)    创建目录
os.mkdir('text')    # 如果目录存在则创建失败,会报错

# os.chdir() 切换到指定目录,接受一个字符串路径
os.chdir('text')   # 如果目录不存在 则报错

print(os.curdir)    # 打印当前的工作(相对)路径

# os.getcwd() 以字符串的形式返回当前的工作路径(绝对)
print(os.getcwd())

# os.system() 运行shell命令 字符串参数
os.system('notepad')    # 打开记事本
文件操作


"""
文件读写主要分三步:
打开文件 open(file, mode='r') 返回一个文件对象
其实 open 的参数有很多,这里面就选择常用的两个吧
关于mode  'r'       open for reading (default)
    'w'       open for writing, truncating the file first
    'x'       create a new file and open it for writing
    'a'       open for writing, appending to the end of the file if it exists
    'b'       binary mode
    't'       text mode (default)
    '+'       open a disk file for updating (reading and writing)
    'U'       universal newline mode (deprecated)

操作文件 读 read()读取全部(包括换行符),返回一个字符串  readline()读取一行 返回一个字符串  readlines() 读取全部,返回一个列表,列表元素是每一行的数据   写 write() 将数据原样写入 如果写入后需要换行,建议在写入的数据后面加入换行符
关闭文件 close() 关闭文件,文件打开后,一定要关闭

"""
f = open('a.txt')  # 如果不写mode 则默认为'r' 只读打开
s = f.read()  # 读取全部内容
f.close()  # 关闭文件

# python中还可以使用with 方法,这样可以避免忘记关闭文件 方法使用如下
with open('a.txt', 'a') as f:  f.writelines('ccc')  f.writelines('bb')  f.writelines('a')

异常处理

"""
异常处理:
在文件操作时,我们可以经常会遇到文件不存在,
目录不存在等而导致的各种情况导致程序异常终止。
但很多时候我们希望,即使程序出现异常,依然能够完成其它的操作
这个时候我们就需要用到异常处理

try:  语句
except:  语句   我们来看一下例子
"""
try:  f = open('not_exist.txt')  print('文件打开成功')
except:  print('文件打开失败')
# 对于上面的程序,执行时,并不会报错,而是打印出了 文件打开失败
# 这样即使文件打开失败,我们依然可以执行下面的语句,不会退出

# 因为程序的异常有很多种类,所以我们也可以捕捉特定的异常
try:  m = 6 / 0
except ZeroDivisionError as e:  # 这里只捕捉被0除的异常,其它的异常并不能捕捉到  print(e.args)  # 打印异常的详细信息

# 这里其实是还可以写多个except 但是注意上面的写的异常不能包含了下面的异常,否则,也是捕捉不到的
try:  m = 6 / 0
except Exception as e:  # 这里面虽然是ZeroDivisionError的异常,但是Exception是所有异常的基类,所以捕获不到下面的异常  print('Exception')
except ZeroDivisionError as ze:  print('ZeroDivisionError')

# try--except--finally
try:  m = 0 / 0
except Exception as e:  print(e.args)
finally:  print('无论如何都要执行我')  # finally的语句都要执行,一般用的不多,但是我们可以用它来关闭文件 这样就不会因为程序异常退出而没有关闭文件

不知道为什么代码提交上去排版很乱,冒号后面不知道换行,所以特意截了图,应该好看一点
#笔记##读书笔记##Python#
全部评论

相关推荐

沉淀一会:**圣经 1.同学你面试评价不错,概率很大,请耐心等待;2.你的排名比较靠前,不要担心,耐心等待;3.问题不大,正在审批,不要着急签其他公司,等等我们!4.预计9月中下旬,安心过节;5.下周会有结果,请耐心等待下;6.可能国庆节前后,一有结果我马上通知你;7.预计10月中旬,再坚持一下;8.正在走流程,就这两天了;9.同学,结果我也不知道,你如果查到了也告诉我一声;10.同学你出线不明朗,建议签其他公司保底!11.同学你找了哪些公司,我也在找工作。
点赞 评论 收藏
分享
jack_miller:杜:你不用我那你就用我的美赞臣
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务