专题12 文件读取-高中信息技术特色专项

2024-07-08
| 2份
| 18页
| 137人阅读
| 3人下载
精品

内容正文:

专题12 文件读取 信息技术特色专项 授课教师: 日期:2024.0.1.01 学习目标 理解文件操作的顺序 0 1 掌握文件打开、关闭方法的使用 0 2 掌握文件读写方法和文件定位方法的使用 0 3 学习目录 01 文件的读写 02 文件的定位 03 文件的打开和关闭 PART 01 文件的关闭与打开 01 文件指存储在外部介质(如磁盘等)上有序的数据集合,这个数据集有一个名称,称为文件名。按数据的组织形式不同,可以将文件分为文本文件和二进制文件两大类。 文本文件一般由单一特定编码的字符组成,如UTF-8编码,内容容易统一展示和阅读。 二进制文件直接由比特0和比特1组成,没有统一字符编码,文件内部数据的组织格式与文件用途有关。 文件的关闭与打开 02 Python对文本文件和二进制文件采用统一的操作步骤: (1)打开文件,或者新建文件; (2)读/写文件; (3)关闭文件。 Python内置了文件对象,通过open()函数即可按照指定模式打开指定文件,并创建文件对象,其语法格式如下: 文件对象名 = open(文件名[,打开方式]) 文件名亦可包含文件路径,写路径时注意斜杠问题。若路径和文件名为“c:\myfile”,应写成“c:\\myfile”。 省略为只读方式 文件的关闭与打开 03 文件打开方式 含 义 如果指定的文件不存在 r(只读) 打开一个文本文件,只允许读数据 出错 w(只写) 打开或建立一个文本文件,只允许写数据 建立新文件 a(追加) 打开一个文本文件,并在文件末尾增加数据 建立新文件 rb(只读) 以二进制格式打开一个文件,只允许读数据 出错 wb(只写) 以二进制格式打开或建立一个文件,只允许写数据 建立新文件 ab(追加) 以二进制格式打开一个文件,并在文件末尾写数据 建立新文件 r+(读写) 打开一个文本文件,允许读和写 出错 w+(读写) 打开或建立一个文本文件,允许读和写 建立新文件 a+(读写) 打开一个文本文件,允许读或在文件末追加数据 建立新文件 rb+(读写) 以二进制格式打开一个文件,允许读和写 出错 wb+(读写) 以二进制格式打开或建立一个文件,允许读和写 建立新文件 ab+(读写) 以二进制格式打开一个文件,允许读或在文件末尾追加数据 建立新文件 文件的关闭与打开 03 文件的关闭 在Python中,虽然文件会在程序退出后自动关闭,但是考虑到数据的安全性,在每次使用完文件后,都需要使用close()方法关闭文件,其语法格式如下: 文件对象名.close() 以只写方式打开一个名为“test.txt”的文件,然后关闭文件,代码如下: file = open('test.txt','w') #以只写方式打开一个名为“test.txt”的文件 file.close() #关闭文件 PART 02 文件的读写 01 文件的读写 1.write()方法 write()方法用于向文件中写入指定字符串,其语法格式如下: 文件对象名.write(str) 例:向文件“testfile.txt”文件中写入如下数据。 Interface options Generic options Miscellaneous options Options you shouldn’t use file = open('testfile.txt','w') #向文件中输入字符串 file.write('Interface options ') file.write('Generic options ') file.write('Miscellaneous options ') file.write('Options you shouldn’t use ') file.close() 提示 如果打开文件时,文件打开方式带“b”,那么写入文件内容时,str(参数)要用encode方法转为字节流形式,否则报错。file.write('Interface options'.encode()) 02 文件的读写 2.writelines()方法 writelines()方法用于向文件中写入一序列的字符串。这一序列字符串可以是由迭代对象产生的,如一个字符串列表,其语法格式如下: 文件对象名.writelines(sequence) 例:使用writelines()方法向已有的“testfile.txt”文件中追加如下数据。 Environment variables ls = ['Environment ','variables'] with open('testfile.txt','a') as file: file.writelines(ls) #向文件中追加字符串列表 04 文件的读写 1.read()方法 read()方法用于从文件中读取指定的字节数,如果未给定参数或参数为负,则读取整个文件内容,其语法格式如下: 文件对象名.read([size]) size为从文件中读取的字节数 该方法返回从文件中读取的字符串 例:使用read()方法读取“testfile.txt”文件。 with open('testfile.txt','r') as file: #以只读方式打开原有的名为“testfile.txt”的文件 line = file.read(10) #读取前10个字节 print(line) #输出前10个字节 print('*'*30) #输出30个*用于分隔 content = file.read() #读取文件中剩余的所有内容 print(content) #输出 05 文件的读写 2.readline()方法 readline()方法用于从文件中读取整行,包括“ ”字符。如果指定了一个非负数的参数,则表示读入指定大小的字符串,其语法格式如下: 文件对象名.readline([size]) 例:使用readline()方法读取“testfile.txt”文件。 with open('testfile.txt','r') as file: #以只读方式打开原有的名为“testfile.txt”的文件 line = file.readline() #读取一行 print(line) #输出 print('*'*30) #输出30个*用于分隔 line = file.readline(10) #读取下一行的前10个字符 print(line) #输出 PART 03 文件的定位 01 文件的定位 在读写文件的过程中,如果想知道当前文件位置指针的位置,可以通过调用tell()方法来获取。tell()方法返回文件的当前位置,即文件位置指针当前位置。其语法格式如下: 文件对象名.tell() 例:使用tell()方法获取文件当前的读写位置。 with open('testfile.txt','r') as file: #以只读方式打开名为“testfile.txt”的文件 line = file.read(8) #读取前8个字节 print(line) #输出前8个字节 p = file.tell() #获取指针当前位置 print('当前位置:',p) #输出当前位置 line = file.read(4) #继续读取4个字节 print(line) #输出读取到的数据 p = file.tell() #获取指针当前位置 print('当前位置:',p) #输出当前位置 02 文件的定位 如果在读写文件的过程中,需要从指定的位置开始读写操作,就可以使用seek()方法实现。seek()方法用于移动文件位置指针到指定位置,其语法格式如下: 文件对象名.seek(offset[,whence]) 表示偏移量,也就是需要偏移的字节数。 可选,默认值为0,表示起始点,即位移量的参考点,有三种取值,0代表“文件开始位置”,1代表“当前位置”,2代表“文件末尾位置”。 03 文件的定位 例:创建名为“seek.txt“的文件,输入“This is a test!”并存放进文件中,读取单词“test”并输出到终端。 filename = input('请输入新建的文件名:') #输入文件名 with open(filename,'w+') as file: #新建文件并以读写方式打开 file.write('This is a test!') #将字符串输入到文件 file.seek(10) #指针移到从头开始的第10个字符处 con = file.read(4) #读取4个字符给con print(con) #输出 感谢欣赏 $$null

资源预览图

专题12 文件读取-高中信息技术特色专项
1
专题12 文件读取-高中信息技术特色专项
2
专题12 文件读取-高中信息技术特色专项
3
专题12 文件读取-高中信息技术特色专项
4
专题12 文件读取-高中信息技术特色专项
5
专题12 文件读取-高中信息技术特色专项
6
所属专辑
相关资源
示范课
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。