Python基础(八),八下基础精炼
Python基础(八),八下基础精炼
今日主要内容
- 文件操作
- 文件路径
- 打开方式
- 编码方式
- 文件句柄
- 文件修改
一、文件操作
(一)文件操作的用途
- 我们运行代码时产生的数据和记录,存储在内存中,当程序运行完,产生的数据和记录就会被释放掉,如果我们需要这个数据或记录以便下次使用,那就需要用文件存储起来(如商城的购买记录等)
- 文件操作用于:持久化存储数据
- 文件操作的三步骤:
- 打开文件
- 操作文件
- 关闭文件
(二)文件操作的格式
f = open(文件路径, 打开方式, 编码方式)
f = open("text.txt", mode="r", encoding="utf-8")
"""文件操作"""
f.close()
with open(文件路径, 打开方式, 编码方式) as f:
- 以此方式打开文件不需要手动关闭文件,自动关闭
- 可以打开多个文件
with open(...) as f1, open(...) as f2:
with open("text.txt", mode="r", encoding="utf-8") as f:
"""文件操作"""
(三)文件路径
- 文件路径:文件所在的位置
- 分为 绝对路径 和 相对路径
(四)打开方式
mode可以省略,直接填入打开方式,若不填默认为只读"r"
r
只读
w
只写(清空写)
a
追加(追加写)
rb
以字节方式打开文件用于只读
wb
以字节方式打开文件用于只写(清空写)
ab
以字节方式打开文件用于追加(追加写)
r+
读写
w+
写读(清空写)
a+
追加写读(追加写)
r+b
以字节方式打开文件用于读写
w+b
以字节方式打开文件用于写读(清空写)
a+b
以字节方式打开文件用于追加(追加写)
(五)编码方式
- 编码方式决定文件的读写以何种方式进行编码
- windows使用的编码方式是GBK(终端)
- Pycharm使用的是编码方式是UTF-8
- 打开方式所有以字节打开打开的都不能填入编码方式
(六)文件句柄
用来操作文件的媒介,文件操作的所有方法都针对于文件句柄
文件句柄是一个迭代器,可以进行for循环
f.read()
读取全部内容
f.readline()
读取一行内容
f.readlines()
读取全部内容
f.close()
关闭文件
f.write()
写入内容
f.flush()
刷新内容
f.seek()
移动光标
f.tell()
获取光标位置
f.truncate()
截断文件
- 注意:文件读取的结果为字符串类型
- 注意:文件只能写入字符串,写入其他类型数据会报错
二、文件修改
文件修改只能将原文件内容读取到内存中,将信息修改完毕之后,写到新的文件中,将原文件删除,并将新文件重命名成原文件的名字
需要导入os模块用来删除文件和重命名文件
import os
with open("text.txt", "r", encoding="utf-8") as f1,\
open("text副本.txt", "w", encoding="utf-8") as f2:
for line in f1:
new_line = line.replace("旧内容", "新内容")
f2.write(new_line)
os.remove("text.txt") # 删除原文件
os.rename("text副本.txt", "text.txt") # 重名命成原文件
- 文件路径
- 打开方式
- 编码方式
- 文件句柄
(一)文件操作的用途
- 我们运行代码时产生的数据和记录,存储在内存中,当程序运行完,产生的数据和记录就会被释放掉,如果我们需要这个数据或记录以便下次使用,那就需要用文件存储起来(如商城的购买记录等)
- 文件操作用于:持久化存储数据
- 文件操作的三步骤:
- 打开文件
- 操作文件
- 关闭文件
(二)文件操作的格式
f = open(文件路径, 打开方式, 编码方式)
f = open("text.txt", mode="r", encoding="utf-8") """文件操作""" f.close()
with open(文件路径, 打开方式, 编码方式) as f:
- 以此方式打开文件不需要手动关闭文件,自动关闭
- 可以打开多个文件
with open(...) as f1, open(...) as f2:
with open("text.txt", mode="r", encoding="utf-8") as f: """文件操作"""
(三)文件路径
- 文件路径:文件所在的位置
- 分为 绝对路径 和 相对路径
(四)打开方式
mode可以省略,直接填入打开方式,若不填默认为只读"r"
r 只读 w 只写(清空写) a 追加(追加写) rb 以字节方式打开文件用于只读 wb 以字节方式打开文件用于只写(清空写) ab 以字节方式打开文件用于追加(追加写) r+ 读写 w+ 写读(清空写) a+ 追加写读(追加写) r+b 以字节方式打开文件用于读写 w+b 以字节方式打开文件用于写读(清空写) a+b 以字节方式打开文件用于追加(追加写)
(五)编码方式
- 编码方式决定文件的读写以何种方式进行编码
- windows使用的编码方式是GBK(终端)
- Pycharm使用的是编码方式是UTF-8
- 打开方式所有以字节打开打开的都不能填入编码方式
(六)文件句柄
用来操作文件的媒介,文件操作的所有方法都针对于文件句柄
文件句柄是一个迭代器,可以进行for循环
f.read() 读取全部内容 f.readline() 读取一行内容 f.readlines() 读取全部内容 f.close() 关闭文件 f.write() 写入内容 f.flush() 刷新内容 f.seek() 移动光标 f.tell() 获取光标位置 f.truncate() 截断文件
- 注意:文件读取的结果为字符串类型
- 注意:文件只能写入字符串,写入其他类型数据会报错
二、文件修改
文件修改只能将原文件内容读取到内存中,将信息修改完毕之后,写到新的文件中,将原文件删除,并将新文件重命名成原文件的名字
需要导入os模块用来删除文件和重命名文件
import os
with open("text.txt", "r", encoding="utf-8") as f1,\
open("text副本.txt", "w", encoding="utf-8") as f2:
for line in f1:
new_line = line.replace("旧内容", "新内容")
f2.write(new_line)
os.remove("text.txt") # 删除原文件
os.rename("text副本.txt", "text.txt") # 重名命成原文件
文件修改只能将原文件内容读取到内存中,将信息修改完毕之后,写到新的文件中,将原文件删除,并将新文件重命名成原文件的名字
需要导入os模块用来删除文件和重命名文件
import os
with open("text.txt", "r", encoding="utf-8") as f1,\
open("text副本.txt", "w", encoding="utf-8") as f2:
for line in f1:
new_line = line.replace("旧内容", "新内容")
f2.write(new_line)
os.remove("text.txt") # 删除原文件
os.rename("text副本.txt", "text.txt") # 重名命成原文件
相关内容
- 暂无相关文章
评论关闭