文件是长久保存信息并允许重复使用和反复修改的重要方式,同时也是信息交换的重要途径。
文件类型:
(1)文本文件
文本文件存储的是常规字符串,由若干文本行组成,通常每行以换行符‘\n‘结尾。常规字符串是指记事本之类的文本编辑器能正常显示、编辑并且人类能够直接阅读和理解的字符串,如英文字母、汉字、数字字符串。在Windows平台中,扩展名为.txt、.log、.ini的文件都属于文本文件,可以使用字处理软件如gedit、记事本进行编辑。
(2)二进制文件
常见的如图形图像文件、音视频文件、可执行文件、资源文件、各种数据库文件、各类office文档等都属于二进制文件。二进制文件把信息以字节串(bytes)进行存储,无法用记事本或其他普通字处理软件直接进行编辑,通常也无法被人类直接阅读和理解,需要使用对应的软件进行解码后读取、显示、修改或执行。
文件内容操作三步走:打开、读写、关闭
文件的打开:<变量名>=open(<文件名>,<打开模式>)
文件的打开模式 | 描述 |
‘r‘ | 只读模式,如果文件不存在,返回FileNotFoundError |
‘w‘ | 覆盖写模式,文件不存在则创建,存在则完全覆盖 |
‘x‘ | 创建写模式,文件不存在则创建,存在则返回FileExistError |
‘a‘ | 追加写模式,文件不存在则创建,存在则在文件最后追加内容 |
‘b‘ | 二进制文件模式 |
‘t‘ | 文本文件模式 |
‘+‘ | 与r/w/x/a一同使用,在原功能基础上增加同时读写能力 |
文件的读写:
方法 | 描述 |
close() | 关闭文件,释放文件对象 |
read([size]) | 从文本文件中读取size个字符的内容作为返回结果,或从二进制文件中读取指定数量的字节并返回,如果省略size则表示读取所有内容 |
readable() | 测试当前文件是否可读 |
readline() | 从文本文件读取一行内容作为结果返回 |
readlines() | 把文本文件中的每行文本作为一个字符串存入列表中,返回该列表 |
seek(offset) | 改变当前文件操作指针的位置,offset含义:0-文件开头;1-当前位置;2-文件结尾 |
seekable() | 测试当前文件是否支持随机访问,若不支持则调用方法seek()、tell()、和truncate()时会抛出异常 |
tell() | 返回文件指针当前位置 |
truncate([size]) |
删除从当前指针位置到文件末尾的内容。如果指定了size,则无论指针在什么位置都只留下前size个字节,其余的一律删除 |
write(s) | 把s的内容写入文件 |
writable() | 测试当前文件是否可写 |
writeline(s) | 把字符串列表写入文本文件,不添加换行符 |
文件的关闭:<变量名>.close()
二、将excel表变成csv格式文件并把优秀变为90,良好变为80,及格变为60,不合格变为0
再把csv格式文件转换成html文件
excel文件如下:
代码如下:
import pandas as pd def ExcelToCsv_1(StartName,EndName): grade=pd.read_excel(StartName) Grade=grade.replace("优秀","90") Grade=Grade.replace("良好","80") Grade=Grade.replace("合格","60") Grade=Grade.replace("不合格","0") Grade.to_csv(EndName) ExcelToCsv_1("Python成绩登记信计.xlsx","Python成绩.csv") f=pd.read_csv("Python成绩.csv") f.to_html("Python成绩.html")
结果如下: