python文件操作

文件操作介绍

  • <1>什么是文件
    image.png
  • <2>文件的作用
    使用文件的目的:保存数据存放在磁盘

就是把一些存储存放起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力

文件的打开与关闭

  • <1>打开文件
    在python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件
    open(文件名,访问模式)
    示例如下:

    image.png

  • <2>关闭文件
    close( )
    示例如下:
    新建一个文件,文件名为:test.txt

    f = open('test.txt', 'w')

    关闭这个文件

    f.close()

文件的读写

  • <1>写数据(write)
    使用write()可以完成向文件写入数据

新建一个文件 file.py,向其中写入如下代码:(pycharm环境)
f = open('test.txt', 'w')
f.write('hello world, i am here!')
f.close()

结果演示:
image.png

新建一个文件 file.py,向其中写入如下代码:(pycharm环境)
f = open('test.txt', 'w')
f.write('hello world, i am here!')
f.close()

结果演示:


image.png

注意:
如果文件不存在那么创建,如果存在那么就先清空,然后写入数据

  • <2>读数据(read)
    使用read(num)可以从文件中读取数据,num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件中所有的数据

新建一个文件file_read_test.py,向其中写入如下代码:
f = open('test.txt', 'r')
content = f.read(5) # 最多读取5个数据
print(content)
print("-"*30) # 分割线,用来测试

content = f.read() # 从上次读取的位置继续读取剩下的所有的数据
print(content)

f.close() # 关闭文件,这个可以是个好习惯哦

运行现象
image.png

注意:
如果用open打开文件时,如果使用的"r",那么可以省略,即只写 open('test.txt')
如果没有文件,打开报错,存在该文件才能操作
如果文件中存在中文显示,会出现乱码需要添加encoding='utf-8'
open(‘test.txt’,”r”, encoding='utf-8')

  • <3>读数据(readlines)

就像read没有参数时一样,readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素

demo:

f = open('test.txt', 'r')
content = f.readlines()
print(type(content))
i=1
for temp in content:
print("%d:%s" % (i, temp))
i += 1
f.close

  • <4>读数据(readline)

f = open('test.txt', 'r')
content = f.readline()
print("1:%s" % content)

content = f.readline()
print("2:%s" % content)

f.close()

  • <4>可写(a)

f = open('test.txt', ‘a')
f.write("11wswsw")
f.close()

 (可写)形式打开文件,如果文件不存在则创建并从头添加写入的内容,存在则原有数据后追加数据,

  调用read()会一次性读取文件的全部内容,如果文件有10G,内存就爆了,所以,要保险起见,可以反复调用read(size)方法�每次最多读取size个字节的内容。
  另外,调用readline()可以每次读取一行内容,调用readlines()一次读取所有内容并按行返回list�因此,要根据需要决定怎么调用。如果文件很小,read()一次性读取最方
  便;如果不能确定文件大小,反复调用read(size)比较保险;如果是配置文件,调用readlines()最方便

二进制文件的读写

  • <1>读数据(rb)

with open("1.jpg","rb") as rf:
res = rf.read()
print(res)

第二种读取文件的方式(不需要手动关闭文件)

with open("文件","读取模式") as rf:
操作
注意:
如果没有文件,打开报错,存在该文件才能操作

  • <1>读数据和写文件(rb,wb)

with open("1.jpg","rb") as rf:
res = rf.read()
with open("textjpg.jpg", "wb") as wf:
res = wf.write(res)
print(res)
结合使用看效果

文件与文件夹的相关操作

文件的相关操作

有些时候,需要对文件进行重命名、删除等一些操作,python的os模块中都有这么功能

1. 文件重命名

os模块中的rename()可以完成对文件的重命名操作

rename(需要修改的文件名, 新的文件名)

import os
os.rename("毕业论文.txt", "毕业论文-最终版.txt")

2. 删除文件

os模块中的remove()可以完成对文件的删除操作
remove(待删除的文件名)

import os
os.remove("毕业论文.txt")

3. 创建文件夹

import os
os.mkdir("张三")

4. 获取当前目录

import os
os.getcwd()


1. 文件的打开 以写入的方式新建文件

image.png

2.写入数据

image.png
image.png

3.关闭文件

image.png

4.读取文件

image.png

5.处理乱码方式

image.png

6.读取数据,读取每一行的数据

image.png

7.循环读取每一行的数据

image.png

8.写入数据 以追加的方式写入

image.png
image.png

9.二进制文件读数据

image.png

10.二进制文件的读写数据

image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容