1.文件的概念
计算机的文件就是存储在某种长期储存设备上的一段数据,如U盘、硬盘、移动硬盘、光盘等。
文件的作用:将数据长期保存下来,在需要的时候使用
文件的存储方式:文件以二进制的方式保存在磁盘中
2.文件的分类
(1)文本文件
可以用文本编辑器打开的文件,如.txt,.py,.html,.java,.c,.cpp,文本文件最终还是以二进制的方式保存的。
(2)二进制文件
不能使用文本编辑器打开,必须使用专用的软件打开的文件,如Office办公软件的文件,图片,.png,.jpg,音频文件。
3.文件的操作
(1)打开文件
(2)读(将文件内容读入内存)、写文件(将内存内容写入文件)
(3)关闭文件
4.操作文件的函数/方法
(1)open():打开文件,并且返回文件操作对象
(2)read():将文件内容读取到内存
(3)write():将指定内容写入文件
(4)close():关闭文件
# 打开文件 file = open('read.txt', encoding = 'utf-8') text = () # 打印文件 print('%s'% text) print(type(text)) ()
5.打开文件的方式
(1)r:以只读方式打开文件,文件的指针将会放在文件的开头,这是默认模式,如果文件不存在报错
(2)w:以只写的方式打开文件,如果文件存在会被覆盖,如果文件不存在,创建新文件
(3)a:以追加方式打开文件,如果文件存在,文件指针将会放在文件的结尾,如果文件不存在创建新文件进行写入
(3)r+:以读写方式打开文件,文件的指针将会放在文件的开头,如果文件不存在,抛出异常
(4)w+:以读写方式打开文件,如果文件存在会被覆盖,如果文件不存在,创建新文件
(5)a+:以读写方式打开文件,如果文件已存在,文件指针将会放在文件的结尾,如果文件不存在将会写入
write()方法只能写入字符串,不能写入列表,是有返回值数据的长度
示例:
# 只读 file=open('read.txt’, ‘r', encoding = 'utf-8') () # 只写 file=open('read.txt', 'w', encoding = 'utf-8') text = ('写入文件') () # 追加 file=open('read.txt’, ‘a', encoding = 'utf-8') text = ('写入文件') ()
6.按行读取文件内容
read方法默认会把文件的所有内容一次性读取到内存
如果文件太大,对内存的占用会非常严重
redline方法
redline方法可以一次读取一行内容
方法执行后会把文件的指针移动到下一行,准备再次读取
file = open('new.txt', 'r', encoding = 'utf-8') while True: lin_text = line() print(lin_text, end='') if len(lin_text) == 0: break
7.文件操作
(1)重命名文件:os.rename(源文件名,目标文件名)
(2)删除文件:os.remove(文件名 )
(3)目录操作
目录列表:os.listdir(目录名)
创建目录:os.mkdir(目录名)
删除空目录:os.rmdir(目录名)
获取当前目录:os.getcwd()
修改工作目录:os.chdir(目标目录)
判断是否是文件夹:os.(文件夹路径)
判断目录/文件是否存在:os.(目录/文件)