制作自己的第一个网页

一、读入一个excel文件,并存为csv格式,并把优秀变成90,良好80,及格60,没有交0分。

excel文件如下

 代码如下

1 import pandas as pd
2 start=['优秀','良好','合格','不合格']
3 change=['90分','80分','60分','0分']
4 file=pd.read_excel("Python成绩登记信计.xlsx")
5 l=len(file.index)
6 for index in range (l):
7     for i in range(4):
8         file.iloc[index]=file.iloc[index].replace(start[i],change[i])
9 file.to_csv("Python成绩登记信计csv.csv",index=False,header=1)

运行结果如下

 二、将上述csv格式文件转换为html文件

可利用pandas

代码如下

1 import pandas as pd
2 f=pd.read_csv("Python成绩登记信计csv.csv")
3 f.to_html("Python成绩登记信计.html")

因为csv文件中有中文,所以可能转换后的html中可能出现乱码

解决办法:可在python中打开转换后的html文件,然后在第一行加入

<head>
<meta charset="UTF-8">

然后再次打开就可以啦

三、运用python CGI把上面的csv格式文件,用网页显示 截屏

代码如下

 1 def fill_data(excel,length=4):
 2     text='<tr>'
 3     for i in range(length):
 4         tmp='<td align="center">{}</td>'.format(excel[i+1])
 5         text +=tmp
 6     text +="</tr>
"
 7     return text
 8 def GetCsv(csvFile):
 9     ls=[]
10     csv=open(csvFile,'r',encoding="utf-8")
11     for line in csv:
12         line=line.replace('
','')
13         ls.append(line.split(','))
14     return ls
15 def  CsvToHtml(csvFile,thNum):
16     csv_list=GetCsv(csvFile)
17     print("Content-type:text/html

")
18     print('''
19 <!DOCTYPE HTML>
<html>
<body>
<meta charset=gbk2313)
20 <h1 align=center>Python成绩表</h2>
21 <table border='blue>
''')
22     for i in range(1,thNum+1):
23         print('<th width="20%">{}</th>'.format(csv_list[0][i]))
24     print("</tr>
")
25     for i in range(1, len(csv_list)):   # 写表格的数据,从第2行开始为数据
26         print(fill_data(csv_list[i], 5))
27     print("</table>
</body>
</html>") # 写html文件尾部
28 
29 CsvToHtml("C:pyhton编程Python成绩登记信计csv.csv",5)
原文地址:https://www.cnblogs.com/qinlai/p/12954734.html