6.1 .1文件读取操作
'''
演示对文件的读取
'''# 打开文件
import timef = open('02_word.txt', 'r', encoding="UTF-8")
print(type(f))# #读取文件 - read()
# print(f'读取10个字节的结果{f.read(10)}')
# print(f'读取全部字节的结果{f.read()}')# #读取文件 - readLines()
# lines = f.readlines()  #读取文件的全部行,并封装到列表中
# print(f'lines对象的类型是{type(lines)},{lines}')# 读取文件 - readLine()
line1 = f.readline()  # 读取文件的一行
print(f'lines对象的类型是{type(line1)},{line1}')# for循环读取文件每一行
for line in f:print(f'每一行数据{line}')# 文件的关闭
f.close()
# time.sleep(50000)# with open 方法操作文件
import timewith open('02_word.txt', 'r', encoding="UTF-8") as f:for line in f:print(f'每一行数据是:{line}')
time.sleep(2) 
6.1.2文件读取操作的基本案例

'''
itheima itcast python itheima python itcast beijing shanghai itheima shenzhen guangzhou itheima wuhan hangzhou itheima zhengzhou bigdata itheima
'''
#方法一
with open('02_word.txt', 'r', encoding="UTF-8") as f:count = 0for line in f:line = line.strip()  #去除开头结尾的空格和换行符line1 = line.split(' ')for word in line1 :if word == 'itheima':count += 1print(f'itheima 出现了{count}次')#方法二
with open('02_word.txt', 'r', encoding="UTF-8") as f:conent = f.read()count = conent.count('itheima')print(f'itheima 出现了{count}次')
 
6.2.1 文件的写入操作
'''
演示函数的写入
'''
#打开文件,不存在的文件 如果文件不存在,则创建文件,写入内容
import timef = open('03_test.txt','w',encoding='UTF-8')
#write写入
f.write('Hello Python!!!!')#flush刷新
# f.flush()
f.close()  #close方法,内置了flush功能#打开已存在的文件   文件存在,则清空原有内容在写入新内容
f = open('03_test.txt','w',encoding='UTF-8')
f.write('黑暗面')
f.close()  #close方法,内置了flush功能 
6.3.1 文件的追加写入操作
'''
演示文件的追加写入操作
'''
#打开文件,不存在的文件
with open('04_test.txt','w',encoding='UTF-8') as f:#write写入内容f.write('python')
with open('04_test.txt','a',encoding='UTF-8') as f:  #如果文件存在,则在a模式下不会清空原有内容,只会在原有内容后加入新内容#write写入内容f.write('\n学习') 
6.4.1 文件的综合操作案例


'''
name,date,money,type, remarks 周杰轮,2022-01-01,100000,消费,正式 周杰轮,2022-01-02,300000,收入,正式 周杰轮,2022-01-03,100000,消费,测试 林俊节,2022-01-01,300000,收入,正式 林俊节,2022-01-02,100000,消费,测试 林俊节,2022-01-03,100000,消费,正式 林俊节,2022-01-04,100000,消费,测试 林俊节,2022-01-05,500000,收入,正式 张学油,2022-01-01,100000,消费,正式 张学油,2022-01-02,500000,收入,正式 张学油,2022-01-03,900000,收入,测试 王力鸿,2022-01-01,500000,消费,正式 王力鸿,2022-01-02,300000,消费,测试 王力鸿,2022-01-03,950000,收入,正式 刘德滑,2022-01-01,300000,消费,测试 刘德滑,2022-01-02,100000,消费,正式 刘德滑,2022-01-03,300000,消费,正式
'''
#打开文件,准备读取
with open('05_测试.txt', 'r', encoding='UTF-8') as f:# 打开文件,准备写入with open('05_测试.txt.bak', 'w', encoding='UTF-8') as f_1:for line in f:#去掉开头结尾空格和转换符line = line.strip()# #将数据按照‘,’分割开来,并变化为列表形式# line = line.split(',')# #判断数据结尾是否为  正式# if line[-1] == '正式':#     #将列表转换为字符串#     line = str(line)if line.split(',')[-1] == '正式':  #简短写法f_1.write(line)f_1.write('\n')else:continue