1、文件读写html
R python |
以只读方式打开编程 |
|
rU或Uapi |
以读方式打开,同时提供通用换行符支持数组 |
|
w数据结构 |
以写方式打开,若是文件已经存在,会覆盖掉原来的数据app |
|
a 编程语言 |
以追加模式打开,在文件后面追加数据,不能读函数 |
|
r+工具 |
以读写模式打开 |
|
w+ |
以读写模式打开,参见w |
|
a+ |
以读写追加模式打开,参见a |
|
rb |
以二进制读模式打开 |
|
wb |
以二进制写模式打开 |
|
ab |
以二进制追加模式打开 |
|
rb+ |
以二进制读写模式打开 |
|
wb+ |
以二进制读写模式打开 |
|
ab+ |
以二进制读写追加模式打开 |
|
2、读取文件中的数据
* 使用read方法一次性读取全部的数据使用,包括换行符
* 使用readline方法每次只读取一行数据,包括换行符
* 使用readlines方法一次性读取完全部数据,包括换行符,并以列表的形式返回,列表中的每一个元素就是原文件的一行
* 使用for循环迭代读取
* 使用列表推导式来将文件的每一行都读取到列表中去
3、xlsx文件转换为cvs文件
(一)Pandas简介
一、Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而建立的。Pandas 归入了大量库和一些标准的数据模型,提供了高效地操做大型数据集所需的工具。pandas提供了大量能使咱们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。
二、Pandas 是python的一个数据分析包,最初由AQR Capital Management于2008年4月开发,并于2009年末开源出来,目前由专一于Python数据包开发的PyData开发team继续开发和维护,属于PyData项目的一部分。Pandas最初被做为金融数据分析工具而开发出来,所以,pandas为时间序列分析提供了很好的支持。 Pandas的名称来自于面板数据(panel data)和python数据分析(data analysis)。panel data是经济学中关于多维数据集的一个术语,在Pandas中也提供了panel的数据类型。
三、数据结构:
import pandas as pd df = pd.read_excel('Python成绩登记信计.xlsx')#读写文件 da = df.to_csv('E:\Anaconda之做业\Python成绩登记信计.csv')#更改xlsx文件为csv文件 da = pd.read_csv('E:\Anaconda之做业\Python成绩登记信计.csv',index_col=0)#读取文件 da = da.replace('优秀','90') #替换数据 da = da.replace('良好','80') da = da.replace('合格','60') da = da.replace('不合格','10') da = da.fillna(0) print(da) dc = da.to_csv('E:\Anaconda之做业\Python成绩登记信计.csv')#保存csv文件
以下图所示效果
4、更改csv文件为html文件
seg1 = ''' <!DOCTYPE HTML>\n<html>\n<body>\n<meta charset=utf-8> <h1 align=center>Python成绩登记信计</h1> <table border='1' align="center" width=100%> <tr bgcolor='yellow'>\n''' #建立一个HTML文件表格,包括标题,宽度 seg2="</tr>\n" seg3="</table>\n</body>\n</html>" def fill_data(locls):#建立表格内容 seg = '<tr><td align="center">{}</td><td align="center">\ {}</td><td align="center">{}</td><td align="center">\ {}</td ><td align="center">{}</td></tr><td align="center">{}</td></tr>\n'.format(*locls) return seg fr = open("E:\Anaconda之做业\Python成绩登记信计.csv","r",encoding='utf-8')#打开文件 ls = [] for line in fr:#将文件内容导入表格 line = line.replace("\n","") ls.append(line.split(","))#去除逗号分隔符 print(ls) fr.close()#关闭文件 fw = open("E:\Anaconda之做业\Python成绩登记信计.html","w",encoding='utf-8')#操做HTML文件 fw.write(seg1) fw.write('<th width="10%">{}</th>\n<th width="10%">{}</th>\n<th width="10%">{}</th>\n<th width="10%">{}</th>\n<th width="10%">{}</th>\n<th width="10%">{}</th>\n'.format(*ls[0]))#写入文件中的数据到表格中 fw.write(seg2)#写入数据 for i in range(len(ls)-1):#进行循环,写入数据 fw.write(fill_data(ls[i+1])) fw.write(seg3) fw.close#关闭并保存文件
效果以下
大功告成,注意charset=utf-8是指html文件的编码语言,必定要好好核对,文件打开的编码必定要适合该文件或编程语言,否则就会出错。