很多朋友问小编Python如何将CSV文件转化为HTML文件,csv文件读取怎么操作呢?带着这些问题一起通过本文学习吧
What' s CSV
CSV 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。
纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。
通常,所有记录都有完全相同的字段序列。通常都是纯文本文件。建议使用WORDPAD或是记事本来开启,再则先另存新档后用EXCEL开启,也是方法之一。
CSV文件格式的通用标准并不存在,但是在RFC 4180中有基础性的描述。使用的字符编码同样没有被指定,但是bitASCII是最基本的通用编码。
CSV 文件读取
``# 一维二维数据的表示和读写`
# split(",") 方法从CSV文件获得内容,每一行会包含一个换行符,所以需要将它replace()
fo ``= open``(``"price2016.csv"`` , ``"r"``)
ls ``= []
for line ``in fo:
`` line ``= line.replace(``"\n"``, "")
`` ls ``= line.split(``","``)
`` lns ``= ""
``for s ``in ls:
`` lns ``+``= "{}\t"``.``format``(s)
``print``(lns)
`fo.close()``
CSV Transfer HTML
``# 将CSV文件转化为HTML文件`
# 标签头
seg1 ``= '''<!DOCTYPE html><html lang="en"><head>
<meta charset="GBK">
<title>Title</title>
</head>
<body>
<h2 align="center">2016年7月部分大中城市新建住宅价格指数</h2>\n
<table border="1" align="center" width="70%">\n
<tr bgcolor="orange">\n'''
# 将数据存入<table>标签中
# 结尾标签
seg2 ``= "</tr>\n"
seg3 ``= "</table>\n</body>\n</html>"
# 填充数据,参数为列表,全部居中显示,返回一个tr
def fill_data(locls):
`` seg ``= '<tr><td align="center">{}</td><td align="center">{}</td><td align="center">{}</td><td align="center">{}</td></tr>\n'``.``format``(``*``locls)
``return seg
# 获取csv文件,存入列表中 ls ``= []`
with ``open``(``"price2016.csv"`` , ``"r"``) as fr:
``for line ``in fr:
`` line ``= line.replace(``"\n"`` , "") ``# 每行去掉换行符
``ls.append(line.split(``","`` )) ``# 按分隔符分割
# 写入HTML中
with ``open``(``"price2016html.html"`` , ``"w"``) as fw:
``fw.write(seg1)
``# 添加表头:ls[0]是表头
``fw.write(``'<th width="25%">{}</th>\n<th width="25%">{}</th>\n<th width="25%">{}</th>\n<th width="25%">{}</th>\n'``.``format``(``*``ls[``0``]))
``fw.write(seg2)
``# 添加每一行
``for i ``in range``(``1`` , ``len``(ls)):
``fw.write(fill_data(ls[i]))
``# 添加结尾标签
` fw.write(seg3)