python的一道小习题

将CSV格式数据转换成网页表格

#!/usr/bin/env python3
# coding=utf-8

with open("test.txt","r") as f:
    txt = f.read()

lines=[]
words=[]
in_word = False
temp_word = ""
for c in txt:
    if c==',' and not in_word:
        if temp_word[0]=='s':
            words.append(temp_word[1:])
        else:
            words.append(int(temp_word))
        temp_word=""
        continue
    if c=='"' and not in_word:
        in_word = True
        temp_word += 's'
        continue
    if c=='"' and in_word:
        in_word = False
        continue
    if c=='\n':
        if temp_word[0]=='s':
            words.append(temp_word[1:])
        else:
            words.append(int(temp_word))
        temp_word=""
        lines.append(words)
        words=[]
        in_word=False
        continue
    temp_word += c
if temp_word:
    if temp_word[0]=='s':
        words.append(temp_word[1:])
    else:
        words.append(int(temp_word))
    lines.append(words)

with open("make_html.html","w+") as fw:
    fw.write(r"<html>")
    fw.write(r"<body>")
    fw.write(r"<h1>数据提取</h1>")
    fw.write(r'<table border="1">')
    line_count=0
    for line in lines:
        fw.write(r"<tr>")
        fw.write(r'<th bgcolor="green">{0!r}</th>'.format(line[0]))
        for word in line[1:]:
            if line_count%2==0:
                fw.write(r'<td bgcolor="yellow">{!r}</td>'.format(word))
            else:
                fw.write(r'<td>{!r}</td>'.format(word))
        fw.write(r"</tr>")
        line_count += 1
    fw.write(r"</table>")
    fw.write(r"</body>")
    fw.write(r"</html>")


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值