#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
@file: interview03.py
@time: 2022/8/28 15:39
@desc:
"""
"""
在python中,文件是如何进行读写的呢,一种是通过open方法配合try...finally方法,还有更为简洁的方法是使用with...as
"""
"""
首先需要了解一下文件打开模式
r 只读模式
w 只写模式
a 追加模式
t 文本文件模式
b 二进制模式
+ 可读可写
"""
# 读取文件
# try...finally
try:
# 如果指定文件不存在,则会报错
# interview03 = open('interview03.txt', 'r')
# 如果txt文件中记录的是中文,会报错
# UnicodeDecodeError: 'gbk' codec can't decode byte 0xab in position 50: illegal multibyte sequence
# 修改编码encoding='utf8'可以成功读取
interview03 = open('interview03.txt', 'r', encoding='utf8')
i = interview03.readlines()
print(i)
finally:
interview03.close()

# 同样的读取文件使用with...as,使用with语句的好处是它会帮你自动关闭文件,因为人比较容易忘记关闭文件
with open('interview03.txt', 'r', encoding='utf8') as f:
i = f.readlines()
print(i)

# 写入文件
# try...finally
try:
# w模式会覆盖原文件
interview03 = open('interview03.txt', 'w')
# interview03.write('aaaaaaaaaa')
# interview03.write('aaaaaaaaaa
bbbbbbbbbb
ttttttttttt')
interview03.writelines('aaaaaaaaaa
bbbbbbbbbb
ttttttttttt')
finally:
interview03.close()

# with...as
with open('interview03.txt', 'w', encoding='utf8') as f:
i = f.write('jjjjjjjjjjjjj')
