龙空技术网

Python学习基础篇 -6: Python中的文件操作

蓝衫科技 268

前言:

而今大家对“python中文件的基本操作”大致比较关心,看官们都想要知道一些“python中文件的基本操作”的相关文章。那么小编同时在网络上搜集了一些关于“python中文件的基本操作””的相关内容,希望咱们能喜欢,小伙伴们快快来学习一下吧!

前言:本专栏以Python为主题,并尽可能保持每星期两到三更,直到将Python的基础知识浅析和讲解完毕,同时,有一定基础的同学可以移步 Python实战专栏 。文件有有什么用

文件可以看作一个仓库,仓库的主要作用自然是存取东西,那为什么需要操作文件呢?这是因为代码在执行完毕时,有些数据需要暂时存储,等待下次需要的时候再拿出来,就好像你使用word软件来编辑文档的时候,需要将你的修改存储到word文档里面,以便后续使用,如果不保存,那你的产出很可能就白费了

文件的操作模式

还是把文件比作仓库,那对于仓库的操作大概有这么几种:

观仓

观仓重点在于观,可远观而不可亵玩焉,我们只能看着它,不能动它,在Python中对应 r 模式(全称为read),这是在Python中的默认文件操作模式加仓

加仓重点在于加,即往仓库中加东西。这在 Python中对于的操作模式是 a 模式 (应该是append的缩写吧),使用这种模式后,如果文件不存在就会创建一个新的文件,后面的追加操作会直接将内容追加到文件末尾。清仓

清仓重点在于清,即清理仓库,为什么要清仓呢?可能是之前的仓库太杂了,我想给它改头换面,重新装修它。这在 Python中对应文件的 w 模式,改模式的作用是新建或者清空已经存在的文件,从而得到一个空文件。特殊的仓库

有些仓库是比较特殊的,它里面存储的东西我们可能无法直接看懂,例如图片,这是一种二进制文件,我们是无法通过肉眼观察然后将其翻译为其所展示的图像的,需要借助图片查看器等"翻译软件"才能看懂图像。图片、音频、视频之类的文件就是二进制文件。在 Python中,操作二进制文件需要在上面 3 种模式种加上 b (byte),例如:wb ab rb这三个。增强模式

增强模式是指在单个操作模式,例如 r ,加上一个 + 号 ,就能额外获得其反面技能,比如r的反面是w ,那么 r+表示可读可写 w+ 也表示可读可写 两种不同之处是 r+ 操作的时候文件必须存在,否则程序就会报错。文件操作代码实现的几种方式

r 模式操作

#  ############ 请先在代码文件目录创建一个叫做 test.txt 的文件 并在里面写入 Hello 这么一个词并保存    # 指定文件名 可以是 test.txt 和 C:/test.txt 这两种格式(还有相对路径表示方法)    # 如果 文件和代码处于同文件夹可以省略    path = 'test.txt'    # open 函数用法 open(文件路径,操作模式) 操作模式可以省略 默认为 r    # 打开 test.txt 文件    f = open(path)    #  read() 方法获取文本文件全部内容    content = f.read()    print(content)    # close()方法关闭文件    f.close()

以上代码的作用是打开 test,txt 这个文件并获取和输出其含有的全部内容

a 模式操作

# 指定文件名 可以是 test.txt 和 C:/test.txt 这两种格式(还有相对路径表示方法)    # 如果 文件和代码处于同文件夹可以省略    path = 'test.txt'    # open 函数用法 open(文件路径,操作模式) 操作模式可以省略 默认为 r    # 以a模式打开 test.txt 文件    f = open(path,'a')    # write 方法写入文件 write里面的参数是要写入的内容 这里操作的是文本文件 写入的类型是字符串    f.write('World!')    print('World 已写入文件里面!')    f.close()

以上代码的作用是在 test.txt 这个文件里面写入 ‘World!’ 这个字符串,特别要注意的是 open函数里面多了一个字符串类型的参数,它就是显式的操作模式,如省略则默认为 r

w 模式操作

python # 指定文件名 可以是 test.txt 和 C:/test.txt 这两种格式(还有相对路径表示方法) # 如果 文件和代码处于同文件夹可以省略 path = 'test.txt' # open 函数用法 open(文件路径,操作模式) 操作模式可以省略 默认为 r # 以w模式打开 test.txt 文件 不存在则新建 存在则清空 f = open(path,'w') print('文件已创建或清空!') # close方法关闭文件 f.close()

以上代码的作用是新建一个叫做 test.txt 的文件 如果已经存在就清空这个文件,运行之后再打开改文件 可以看到内容为空

rb 模式操作

#  ############ 请先在代码文件目录创建一个叫做 test.txt 的文件 并在里面写入 Hello 这么一个词并保存    # 指定文件名 可以是 test.txt 和 C:/test.txt 这两种格式(还有相对路径表示方法)    # 如果 文件和代码处于同文件夹可以省略    path = 'test.txt'    # open 函数用法 open(文件路径,操作模式) 操作模式可以省略 默认为 r    # 以wb的方式打开 test.txt 文件 test.txt 文件里面的可看到的内容是 Hello    f = open(path,'rb')    #  read() 方法获取文本文件全部内容    content = f.read()    print(content)    # 输出结果 b'Hello'# close()方法关闭文件    f.close()
文件常用操作方法

5.读取文件报错的可能原因

对于文本文件,读取报错的可能原因是文件的编码问题 ,例如你的文件可能是用 UTF-8 的方式编码的,但文本文件的默认打开方式可能是 UTF-8 ,这时候可能有些不兼容,你需要做的是在open()函数里面指定一个编码方式,例如 UTF-8 和GBK等,演示代码如下

path = 'test.txt'# encoding = 后面加一个表示编码方式的字符串 例如 UTF-8 GBK utf-8 等等f = open(path,'r',encoding = 'utf-8')#  read() 方法获取文本文件全部内容print(f.read())# close()方法关闭文件f.close()

以上是对Python中的一些文件基本操作的讲解 其中还有一个 with 操作方法没有说,这个同学们可以自己去了解,后面在实战系列中会有所涉及。

最后,本基础系列文章可能还有两篇就结束了,后面的重心会转移到实战专栏,让大家更好地运行 Python ,欢迎有疑惑或者对文章有所见解的同学在评论区讨论噢!

标签: #python中文件的基本操作