Python入门篇【文件处理】

Python【文件处理】


文章目录


提示:以下是本篇文章正文内容,下面案例可供参考

一、编码定义

编码是一种规则集合,记录了内容和二进制间进行相互转换的逻辑。
通过使用编码技术(密码本)将文本文件内容内容翻译成0和1来让计算机进行识别处理。
不同的编码规则将内容翻译成二进制也是不同的。

  • UTF-8
  • GBK
  • Big5
  • ...

计算机只认识0和1,通过将文本内容通过编码规则翻译成0和1才能保存在计算机中并进行处理。


二、文件读取关

在操作系统中,以文件为单位管理磁盘中的数据。对文件的操作主要包括【打开,关闭,读取,写入】,步骤分为:

  1. 【打开】文件
  2. 【读写】文件
  3. 【关闭】文件

2.1 open函数

通过open函数可以打开一个已经存在的文件(不存在则创建)。

python 复制代码
# 语法
open(name,mode,encoding)
  • name:文件路径(绝对/相对路径)
  • 打开文件的模式(r,w,a)
    • r:以只读模式打开文件,文件指针在文件的开头【默认】。
    • w:用于写入,从头开始编辑,原有内容覆盖,文件不存在则新建。
    • a:用于追加内容,新的内容会被写入到已有内容之后,文件不存在则新建。
  • 编码格式
python 复制代码
# 文件操作
# 1.查找文件
f = open('E:/FileBases/demo33.txt', 'r', encoding='utf-8')
print(f)

f是open函数的一个文件对象,是py中的一个特殊类型,其拥有属性和方法,通过对象.属性或对象.方法进行调用。


2.1 read,readline,readlines函数

读取文件,不写参数表示读取所有内容,写数字表示读取多少个字节

python 复制代码
# 语法
文件对象.read(num) # num表示读取文件的长度(单位:字节),不写则表示读取文件的所有数据。
文件对象.readlines() # 按照行的方式将文件中的所有内容进行读取,返回一个列表,每一行数据代表一个元素。
python 复制代码
# 文件操作
# 1.查找文件
f = open('E:/FileBases/demo33.txt', 'r', encoding='utf-8')
print(f)
# 2.读取文件,不写参数表示读取所有内容,写数字表示读取多少个字节
print(f.read())

第二个read会在第一个read的结尾处继续输出。
readline:一次输出一行数据。
readlines示例如下:

python 复制代码
# 文件操作
# 1.查找文件
f = open('E:/FileBases/demo33.txt', 'r', encoding='utf-8')
print(f)
# 2.read读取
# print(f.read(1))
# 3.readlines读取
file_list = f.readlines()
print(file_list)

2.3 close函数

通过close关闭文件对象,如果不关闭,文件对象会被一直占用。

python 复制代码
# 语法
文件对象.close()

2.4 with open函数

通过使用with open函数可以在操作完成后,自动执行close函数来关闭文件,避免文件杯一直占用。

python 复制代码
with open('E:/FileBases/demo33.txt', 'r', encoding='utf-8') as f:
    for line in f:
        print(line)

三、总结


相关推荐
小羊没烦恼!3 天前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
默_笙3 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
俊昭喜喜里3 天前
java中的继承和多态的区别
java
小羊没烦恼!3 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
qq_426003963 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
譕痕3 天前
JSONObject与JSONArray封装数据格式区别
java·json
千里马学框架3 天前
一起学 Android 14:ShellTransition 屏幕旋转过程深度剖析
android·智能手机·性能优化·framework·性能·屏幕旋转·rotation
虎头金猫3 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
美狐美颜SDK开放平台3 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
胡写代码3 天前
别再前后端各写一套表单校验了
java·后端