python入门,文件的编码,读取,写入,追加

目录

1.文件的编码

2.文件的读取

1.open()函数打开文件

2.rede()读取文件

3.readlines()方法

4.readline()方法

5.for循环读取

3.文件的关闭

withopen语法

4.文件的写入

1.write写入字符串

2.flush

5.文件的追加


1.文件的编码

计算机只认得0和1,文件的编码即一种对应方式,比如说"小红"在某一种编码方式中可能对应的是"0100111"而在另一种编码方式中对应的则是"10101100"

目前UTF-8是全球通用的编码格式

2.文件的读取

1.open()函数打开文件

open(name,mode,encoding)

name是要打开的文件的文件名的字符串

mode是打开的模式,有只读,写入,追加

r为只读,这是默认模式

w为写入,如果文件存在则打开文件编辑,原有内容会被删除,如果文件不存在,则会新建一个文件

a用于追加,如果文件存在则会打开文件,将文字追加在原有文件之后,如果文件不存在,则会创建一个文件并且写入

encoding是编码格式,一般为UTF-8

python 复制代码
f = open("D:/test.txt","r",encoding = "UTF-8")

2.rede()读取文件

文件对象.rede(num)

num表示要读取的长度,单位为字节,如果没有传入num默认读取文件中的所有数据

python 复制代码
print(f.read())

3.readlines()方法

一次读取一行文件,读取文件的全部行,返回的是一个列表

python 复制代码
print(f.readlines())

4.readline()方法

一次只读取一行

python 复制代码
print(f.readline())

5.for循环读取

python 复制代码
for line in f:
    print(f"每一行数据是{line}")

3.文件的关闭

python 复制代码
f.close()

用来关闭文件,结束对这个文件的占用

withopen语法

python 复制代码
with open("D:/test.txt","r",encoding = "UTF-8") as f:
    f.readlines()

在操作完成后会自动进行close,防止遗忘了close

4.文件的写入

直接调用write并不会直接写入文件当中,而是会存在缓冲区中,当调用flush函数时,会一次性将缓冲区中的内容写入文件中

采用这样的方法是为了提升效率,避免频繁操作硬板,导致效率下降

1.write写入字符串

python 复制代码
f.write("hello world")

2.flush

python 复制代码
f.flush()

5.文件的追加

只需要将r和w模式,替换为a模式 ,再进行write操作,在此模式下输入的字符串会直接写入到文件中的文字后

注意:

使用write之后一定要flush才会真正的存入

可以使用"\n"来进行换行的操作

python 复制代码
f = open("D:/test.txt","a",encoding = "UTF-8")
相关推荐
q_35488851531 分钟前
计算机毕业设计源码:锦江酒店大数据分析与个性化推荐系统 Django框架 Vue 可视化 Hadoop 爬虫 协同过滤推荐算法 民宿 客栈(建议收藏)✅
python·机器学习·信息可视化·数据分析·django·课程设计·旅游
sg_knight9 分钟前
设计模式实战:代理模式(Proxy)
python·设计模式·代理模式·proxy
xixihaha132412 分钟前
实战:用OpenCV和Python进行人脸识别
jvm·数据库·python
badhope12 分钟前
Python 库全景图:核心工具与最佳实践(小白也能看懂版)
后端·python
m0_6625779717 分钟前
C++中的享元模式实战
开发语言·c++·算法
带娃的IT创业者18 分钟前
WeClaw WebSocket 路由实战:BridgeConnectionManager 如何用四层映射在 800 个连接中实现毫秒级消息转发?
网络·python·websocket·网络协议·fastapi·实时通信
一直学习的程序小白19 分钟前
java进阶-优化GC垃圾回收机制
java·开发语言·jvm
Storynone22 分钟前
【Day】LeetCode:134. 加油站,135. 分发糖果,860. 柠檬水找零,406. 根据身高重建队列
python·算法·leetcode
阿_旭32 分钟前
基于YOLO26深度学习的茶叶病害智能检测识别系统【python源码+Pyqt5界面+数据集+训练代码】
人工智能·python·深度学习·茶叶病害检测
REDcker34 分钟前
glibc、libstdc++ 与 libc++ 区别与联系
开发语言·c++