一、文件操作
文件操作包含以下三个步骤:
1、文件路径
2、编码方式
3、操作方式:‘’只读‘’、“只写”、“读写” 等
1、只读 r
例:
f = open('d:\python手册.txt', mode='r', encoding='utf-8') # mode='r'为只读模式 content = f.read() print(content) f.close() # 注意:文件打开后一定要关闭,一是占用内存,二是占用该文件则其他进程不可修改该文件
结果:
2、只写 w
例:
f = open('日志', mode='w', encoding='utf-8') f.write('今天天气好晴朗') f.close()
原文件夹内容:
执行代码后文件夹内容
日志中的内容
3、追加 a
文件路径的一些坑
在写文件路径时,‘d:\python手册’这样写没有报错,但如果打开的文件路径如'd:\123.txt',则会报FileNotFoundError错误,如下:
f = open('d:\123.txt', mode='r', encoding='utf-8') # 注意文件路径 content = f.read() print(content) f.close()
结果:
报的错误为No such file or directory:‘d:S.txt’,可以看到文件路径并非我们所写的'd:\123.txt'。其实在这里也能明白是‘\’转义符的问题,我们可以将‘\’改为‘\\’,或者用r'xxx'转义,又或者不用‘\’而使用'/',如下:
f1 = open('d:\\123.txt', mode='r', encoding='utf-8') content = f1.read() print(content) f1.close() f2 = open(r'd:\123.txt', mode='r', encoding='utf-8') content = f2.read() print(content) f2.close() f3 = open('d:/123.txt', mode='r', encoding='utf-8') content = f3.read() print(content) f3.close()
结果:
另外,我们看到原来的‘d:\123.txt’被转义为了'd:S.txt',所以这里的转义符是将123当做8进制,然后去找对应的ASCII码的值。