Python-文件 *** 作

Python-文件 *** 作,第1张


一、文件

①定义:就是用来存储数据的


比如图片、文本文档、Excel文档、压缩包、视频等

②作用:保存数据存放在磁盘,通常可以长久保存。


在计算机磁盘中保存的文件是通过目录来组织和管理的。


③好处:把数据存储起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力


二、文件的打开与关闭

1.定义:在python中,使用open函数,可以打开一个已经存在的文件,或者新建一个文件

2.文件的打开方式:

打开方式解释
r打开一个文件用于只读。


文件的指针将会放在文件的开头,这是默认的打开方式,可以不填

w打开一个文件用于写入。


如果该文件存在,则覆盖原有内容。


如果该文件不存在,则自动创建新文件进行写入

a打开一个文件用于追加。


如果该文件存在,文件指针将会放在文件的结尾,新的内容将会写到原有内容之后。


如果文件不存在,则自动创建新文件进行写入

rb以二进制格式打开一个文件用于只读,文件的指针将会放在文件的开头
wb以二进制格式打开一个文件用于写入,如果该文件存在,则覆盖原有内容。


如果该文件不存在,则自动创建新文件进行写入

ab以二进制格式打开一个文件用于追加,文件指针将会放在文件的结尾,新的内容将会写到原有内容之后。


如果文件不存在,则自动创建新文件进行写入

①写入数据(w):如果文件不存在则先创建再写入,如果文件存在就会覆盖原来的数据

对象 = open("文件","w",编码格式等...) 
对象.write("写入数据") 
对象.close
#写入
fileWrite=open("a.txt","w",encoding="utf-8")
fileWrite.write("我等到花儿也谢了")
fileWrite.close()
#覆盖原有数据
fileWrite=open("a.txt","w",encoding="utf-8")
fileWrite.write("我是歌手")
fileWrite.close()

②读取数据(r):"r"可以省略,只写open("文件名") 。


如果没有该文件,打开报错。


  • read():使用read(num)可以从文件中读取数据,num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件中所有的数据
对象 = open("文件","r",编码格式等...) 
变量 = 对象.read() 
print(变量)
对象.close()
//读取全部
fileRead=open("a.txt","r",encoding="utf-8")
a=fileRead.read()
print(a)
fileRead.close()

//指定读取长度,在read里写长度即可
fileRead=open("a.txt","r",encoding="utf-8")
a=fileRead.read(2)
print(a)
fileRead.close()
  • readlines():可以按照行的方式把整个文件中的内容进行一次性读取,返回的是一个列表,其中每一行的数据为一个元素
对象 = open("文件","r",编码格式等...) 
变量 = 对象.readlines() 
print(变量)
对象.close()
//逐行读取
fileRead=open("a.txt","r",encoding="utf-8")
a=fileRead.readlines()
print(a)
fileRead.close()
  • readline():可以按照行的方式把整个文件中的内容进行一行一行的读取
对象 = open("文件","r",编码格式等...) 
变量 = 对象.readline() 
print(变量)
对象.close()
#逐行读取
fileRead=open("a.txt","r",encoding="utf-8")
i=0
while i<=5:
    print(fileRead.readline())
    i+=1
fileRead.close()

③追加数据(a):如果文件不存在则创建并从头添加写入的内容,文件存在则在原有数据后追加数据

对象 = open("文件","a",编码格式等...) 
对象.write("写入数据") 
对象.close
#追加数据
fileAppend=open("a.txt","a",encoding="utf-8")
fileAppend.write("a-lin\n")
fileAppend.write("我是歌手\n")
fileAppend.close()

④读取二进制数据(rb):如果没有文件,打开报错,存在该文件才能 *** 作

#格式1 不用手动关闭文件
with open("二进制文件","rb") as 对象: 
   变量 = 对象.read()
   print(变量)

#格式2
对象 = open("二进制文件","rb",编码格式等...) 
变量 = 对象.read() 
print(变量)
对象.close()

⑤写入二进制数据(wb):如果文件不存在则先创建再写入,如果文件存在就会覆盖原来的数据

#不用手动关闭文件
with open("二进制文件","wb") as 对象: 
   变量 = 对象.write()
   print(变量)
#将图片刘耀文.jpg写入boy.jpg
with open("刘耀文.jpg","rb") as byteRead:
    br=byteRead.read()
with open("boy.jpg","wb") as byteWrite:
    byteWrite.write(br)

⑥关闭文件

对象.close()


三、文件和文件夹的 *** 作

1.文件:有时需要对文件进行重命名、删除等一些 *** 作,python的os模块中就有这些功能

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

import os
os.rename("原文件名","新文件名")
import os
os.rename("a.txt","b.txt")

②删除文件:os模块中的remove()可以完成对文件的删除 *** 作

import os
os.remove("文件名")
import os
os.remove("b.txt")

2.文件夹:

①创建文件夹:os模块中的mkdir()可以完成对文件的重命名 *** 作

import os
os.mkdir("文件夹名")
import os
os.mkdir("study")

②获取当前目录:os模块中的getcwd()可以获取当前目录

import os
print(os.getcwd())

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/607140.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-14
下一篇 2022-04-14

发表评论

登录后才能评论

评论列表(0条)

保存