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文件的編碼語言,必定要好好覈對,文件打開的編碼必定要適合該文件或編程語言,否則就會出錯。