1.文件的读取操作
1.1.open()打开函数
使用open函数可以打开一个已经存在的文件,或者创建一个新文件
语法: open(name,model,encoding)
name:要打开的文件名的字符串
model:设置打开文件的模式,只读,写入追加
encoding:编码格式(一般用UTF-8)
r:只读
w:只写入,原有的文件会被删除,若文件不存在,则创建一个新文件
a:用于追加新的能容会被写到已有内容之后,若文件不存在,创建新文件并写入
#打开文件
#创建了一个f对象
f=open("D:/测试.txt","r",encoding="UTF-8")#f为open的对象
1.2.read()方法
read(num ),num表示要从文件中读取的数据的长度,如果没有传入num,就读取文档中全部数据
readlines(),可以按照行的方式将文档中的内容一次性读取,而且返回一个列表,其中每一行数据为一个元素
1.2.1读取文件read()
print(f"f读取十个字节的结果:{f.read(10)}")
print(f"f读取全部文档的结果:{f.read()}")#如果已经读过一个read,下一个read会在上一个read后面接着读
1.2.2读取文件readlines()
lines=f.readlines()
print(f"lines对象的类型:{type(lines)}")#前边的read()同样也会影响readlines的读取,在read后边接着读
print(f"line的内容:{lines}")#\n换行
1.2.3读取文件readline()调用一次,读一行
line1=f.readline()
line2=f.readline()
line3=f.readline()
print(f"第一行数据{line1}")
print(f"第二行数据{line2}")
print(f"第三行数据{line3}")
1.2.4 for循环读取文件行
for line in f:
print(f"每一行的数据为:{line}")
1.2.5文件的关闭close()-解除对文件的占用
**文件读取后,要用.close关闭文件对象,否则文件会被一直占用
f.close()
1.2.6 with open() as
通过with open语句打开文件,可以自动关闭
with open("D:/测试.txt","r",encoding="UTF-8") as f:
for line in f:
print(f"{line}")
1.3 time.sleep()让程序睡眠
,程序会在执行到该语句时暂停执行指定的时间。
time.sleep(50000)
1.4判断某字符出现次数并累计
f=open("D:/测试.txt","r",encoding="UTF-8" )
1.4.1使用count()直接数出来
content=f.read()
count=content.count("天")
print(f"{count}")
1.4.2一行一行读出来
count=0
for line in f:
lines=line.strip()#去除开头结尾的空格和换行符
words=lines.split(" ")#按照空格划分
for word in words:
if word == "it":
count += 1
print(f"{count}")
2.文件的写入操作
f=open(“D:/text2.txt”,“w”,encoding=“UTF-8”)
2.1写入操作
w模式
- 写入时若文件不存在,就创建一个文件
- 若存在,就会清空文件,然后写入
文件完成写操作,需要flush函数刷新。执行文件的写入操作,刷新后,数据是一块存到硬盘中
close自带有flush函数
f.write("hello world")
f.flush()
f.close()
2.2追加写入操作
a模式
- 与w模式写入基本一致
- 若文件存在,会在后面追加写入内容
- 若要换行可以加上\n,写出换行符
f=open("D:/text2.txt","a",encoding="UTF-8")
f.write("\nhello world")
f.close()