文件操作
打开文件
open函数
f = open('file_test', 'w', encoding='utf-8')
参数mode:
- 'r': 只读,指针在文件开头
- 'w': (创建)并写入,若文件不存在则覆盖
- 'a': 追加,文件不存则创建
读取
s = f.read(10)
content = f.readlines() # 读取全部内容;一个列表,元素为每行内容
read()参数:
- 数据长度(字节)
- 缺省为全部读取
readlines():
- 读取全部内容
- 一个列表,元素为每行内容
readline()
- 一次仅读一行
for 循环读取
for l in open('./file_test', 'r'):
print(l)
临时变量 l
写入
flush 刷新缓冲区:主存->磁盘
# f = open('./file_test', 'w', encoding='utf-8')
#
# for i in range(10):
# f.write(f'hello world { i }\n')
# f.flush()
# f.close()
with open('./file_test', 'w', encoding='utf-8') as f:
for i in range(20):
f.write(f'hello world {i}\n')
关闭
解除占用
f.close()
with open 语法
执行完自动关闭
with open('./file_test', 'r', encoding='utf-8') as f2:
f2.readlines()
捕获异常
try/except 语句
try:
'''执行的代码'''
except Exception as e:
'''处理异常的代码'''
else:
print("没有异常")
多个/特定异常:
try:
'''执行的代码'''
except Exception as e:
'''处理异常的代码'''
else:
print("没有异常")
finally:
print("finished, goodbye")
顶级异常: Exception
从内向外传递,每层都可捕获
模块
import
模块名
模块的名称:__name__
内置变量
if __name__ == '__main__':
test(123)
限制可被 import * 的内容
__all__ = ["mun", "b"]
package.module
具有__init__.py 的文件