006 文件

mac2024-03-12  23

文件

路径 绝对路径: C:\Users\Master\Desktop\test 磁盘路径URL 相对路径 相对于自身正在编辑的文件 文件名 + 扩展名I/O 操作 Input Output

File

open() : open() 方法用于打开一个文件,并返回文件对象

filename 文件路径(相对或者绝对路径)。\

打开方式:

r 默认方式 以只读方式打开文件。文件的指针将会放在文件的开头。rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。r+ 打开一个文件用于读写。文件指针将会放在文件的开头。rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。w 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。w+ : 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

encoding 文件编码 ### 读

read() : 读取文件内容 默认从文件指针的位置,往后一直读到结束。参数: 读取的字节数 readline: 读取文件指针的当前行readlines: 读取所有行

write()

writelines

字符序列

close() 关闭文件对象

文件指针

tell() 返回当前文件指针的位置seek() : 设置文件指针的位置 offset : 偏移量where : 相对于谁偏移 0 代表从文件开头开始算起1 代表从当前位置开始算起,2 代表从文件末尾算起。 f.seek(0,0) 把指针移到文件开头在非b模式打开的时候,seek方法,的第二个参数,不允许赋值为,1或者2.

练习

封装一个函数,传入一个文件名filename,如果文件名不存在,则创建一个filename的文件.如果文件名存在, 在同一个文件夹中复制一个名为filename-复件(扩展名保持一致)的文件.

名为poetry.txt的文件,其内容如下,请删除第三行;

昔人已乘黄鹤去,此地空余黄鹤楼。 黄鹤一去不复返,白云千载空悠悠。 晴川历历汉阳树,芳草萋萋鹦鹉洲。 日暮乡关何处是?烟波江上使人愁。

有名为username.txt的文件,其内容格式如下,写一个程序,判断该文件中是否存在"alex", 如果没有,则将字符串"alex"添加到该文件末尾,否则提示用户该用户已存在;

pizza alex egon

有名为user_info.txt的文件,其内容格式如下,写一个程序,删除id为100003的行;

pizza,100001 alex, 100002 egon, 100003

有名为user_info.txt的文件,其内容格式如下,写一个程序,将id为100002的用户名修改为alex li; pizza,100001 alex, 100002 egon, 100003

附加题: 昨天的彩票系统优化,已购买彩票存储在文本文档中。 下次运行,直接从文档中读取。

最新回复(0)