用python生成在html中显示的表格
本地网页?
如果是一般的网页,表格是csv格式,或者txt格式,可以用pandas包读取,举例:如果是csv格式,这样写:
import pandas as pd
df = pd.read_csv('http:\\......') #表格所在的网址
df # 显示表格数据
如果是txt格式的,把read_csv换成read_table就可以了。
现要实现python制作html格式的表格,利用Python对字符串str.format()格式化操作进行处理,在日常对CVS格式文件处理过程当中,经常会将CVS格式文件进行转换,在正式场合是程序读取CVS文件进行转换并输出到html格式的文件当中,但现在只是实现一下转换的过程,需要输入以逗号分隔的数据。
在设计程式的时候,需要先定义一下整个代码的框架,首先我们要定义一个主函数main(),虽然Python没有规定入口函数,一般在正式的开发中都设计了一个main()函数作为程序的入口函数,或许这是一种规范吧。然后我们在定义一个打印表头的方法print_head(),并在主函数里进行调用。再定义一个打印表尾的方法print_end(),也在主函数中进行调用。定义print_line()为打印表格行,定义extract_field()处理cvs行数据转换为list集合数据。最后再定义一个处理特殊符号的方法escape_html(),因为在html代码中为了避免与它的标签冲突,特要进行特殊符号的转换,如&-->&
还有就是对长度过长的数据要进行处理并用...代替
源代码:
#Author Tandaly
#Date 2013-04-09
#File Csv2html.py
#主函数
def main():
print_head()
maxWidth = 100
count = 0
while True:
try:
line = str(input())
if count == 0:
color = "lightgreen"
elif count%2 == 0:
color = "white"
else:
color = "lightyellow"
print_line(line, color, maxWidth)
count += 1
except EOFError:
break
print_end()
#打印表格头
def print_head():
print("")
#打印表行
def print_line(line, color, maxWidth):
tr = "".format(color)
tds = ""
if line is not None and len(line) > 0:
fields = axtract_fields(line)
for filed in fields:
td = "{0}".format(filed if (len(str(filed)) <= maxWidth) else
(str(filed)[:100] + "..."))
tds += td
tr += "{0}
".format(tds)
print(tr)
#打印表格尾
def print_end():
print("")
#抽取行值
def axtract_fields(line):
line = escape_html(line)
fields = []
field = ""
quote = None
for c in line:
if c in "\"":
if quote is None:
quote = c
elif quote == c:
quote = None
continue
if quote is not None:
field += c
continue
if c in ",":
fields.append(field)
field = ""
else:
field += c
if len(field) > 0:
fields.append(field)
return fields
#处理特殊符号
def escape_html(text):
text = text.replace("&", "&")
text = text.replace(">", ">")
text = text.replace("<", "<")
return text
#程序入口
if __name__ == "__main__":
main()
运行结果:
>>>
"nihao","wo"
nihaowo
"lsddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddsfdddddddddddddddddddddddssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssseeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooosdjfsldkfjsladjfsladjflasjdfljslkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkksssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss","tandaly"
lsdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd...tandaly
"ddddddddddddddddsllsflsdjflsdjfljasfjslfjleiwiwooooooooooosdlsdfkckslslllllwllllllllllllllllllllllllllllllllllllllllllllllllllllllgfdjslfjsdlkkkkkkkkkkksdfssssssssssssss",
34
ddddddddddddddddsllsflsdjflsdjfljasfjslfjleiwiwooooooooooosdlsdfkckslslllllwllllllllllllllllllllllll...34
python 有个第三方库pyh用来生成HTML,可以试用一下:
from pyh import *
page = PyH('This is PyH page')
page << h1(cl='center', 'My big title')
table1 = page << table(border='1',id='mytable1')
headtr = table1 << tr(id='headline')
headtr << td('Head1') << td('Head2')
tr1 = table1 << tr(id='line1')
tr1 << td('r1,c1') <<td('r1,c2')
tr2 = table1 << tr(id='line2')
tr2 << td('r2,c1') <<td('r2,c2')
page.printOut()
..以上代码基于1L"就是累w_w"的方案进行完善
conn = sqlite3.connect(database='thedbfile')
curr = conn.cursor()
curr.execute("select * from thetable")
tr1 = table1 << tr(id="header")
for field in curr.description:
tr1 << th(field[0])
for row in curr:
tr2 = table1 << tr()
for item in row:
tr2 << td(item)
curr.close()
conn.close()
...
怎样将python生成exe
最新版是pyinstaller 3.1.1。支持python2.7和python3.3+。可运行在Windows,Mac和Linux操作系统下。但它不是跨编译的,也就是说在Windows下用PyInstaller生成的exe只能运行在Windows下,在Linux下生成的只能运行在Linux下。pyinstaller在windows下的安装 使用命令pip install pyinstaller即可 在windows下,...
Python案例篇——随机生成中文名
在这个Python编程的实战篇章里,我们将探索如何借助Python的魔力,为你打造一个个性化的中文名生成器,让每个运行都带来惊喜!<让我们一起进入这个充满创新的编程之旅吧!<\/ 首先,我们将在64位Windows系统(只需点击“此电脑”右键,查看系统信息)上,利用PyCharm Community 2020.1版本的Python 3.x环境...
python文件后缀是什么
(3).pyc:这是编译好的字节码。如果导入一个模块,python将生成一个*.pyc包含字节码的文件,以便再次导入它更容易(也更快)。.pyc二进制文件可以反编译成.py文件,反编译软件叫Easy Python Decompiler。(4).pyo:这是在优化(-O)时创建的*.pyc文件,从Python3.5开始,Python将只使用.pyc而不是...
Python中生成器的理解?
9.10. 生成器 Generator 是创建迭代器的简单而强大的工具。它们写起来就像是正规的函数,需要返回数据的时候使用 yield 语句。每次 next() 被调用时,生成器回复它脱离的位置(它记忆语句最后一次执行的位置和所有的数据值)。以下示例演示了生成器可以很简单的创建出来:前一节中描述了基于类的迭代器,...
python生成器到底有什么优点?
4. 使用生成器的注意事项 5. 总结 本文深入浅出地介绍了Python中,一个容易被大家忽略的重要特性,即Python的生成器。为了讲解生成器,本文先介绍了迭代器协议,然后介绍了生成器函数和生成器表达式,并通过示例演示了生成器的优点和注意事项。在实际工作中,充分利用Python生成器,不但能够减少内存使用,...
python是什么?
它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C\/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C++重写。1发展历程编辑自从20世纪90...
python文件如何生成可执行文件
先创建一个 app 目录,在该目录下创建一个 1233.py 文件,文件中包含如下代码:for looper in [1,2,3,4,5]:print(looper)接下来使用命令行工具进入到此 app 目录下,执行如下命令:pyinstaller -F 1233.py 执行上面命令,将看到详细的生成过程。当生成完成后,将会在此 app 目录下看到多了一个...
python随机生成100内的10个整数?
使用random.randint()函数生成30个1到20的整数 for i in range(30):print(random.randint(1, 20))=== 上面的代码将会生成30个1到20之间的随机整数,并依次输出。需要注意的是,在Python中,random.randint() 函数生成的随机整数是包含边界值的。所以,上面的代码中,生成的随机整数可能包含1和100...
python,生成n个100以内的正整数,统计奇数和偶数各多少个?
print("生成的随机数为:", numbers)print("其中有", odd_count, "个奇数,", even_count, "个偶数。")```此程序使用 Python 的 `random` 模块生成指定数量的随机数,并在生成时同时对其进行奇偶性的统计。最后输出所有随机数以及奇偶数的统计结果。注意,为了保证输出正确,我们需要确保 `n` ...
Python怎么实现生成一个拥有100个数的随机整数数组,数值在1到100之间...
import random print([random.randint(1,100) for i in range(100)])
载杜少腹: <html> <body> <form> 可获取码列表: <select name="liscode"> <option value="01">123456</option> <option value="02">123457</option> <option value="03">123458</option> <option value="04">123459</option> <option value=...
龙港区17689879569: 怎样用python脚本生成一个html格式的测试报告 - ?
载杜少腹: 比如很简单的,可以这样:# -*- coding:utf-8 -*- import os,sys html = open('index.html', 'w') html.write("""<html><head> <title>Test</title> <style>img{float:left;margin:5px;}</style></head><body>""") files = os.listdir('.')# 首先处理文本 for f in ...
龙港区17689879569: python中list怎么显示到页面 - ?
载杜少腹: 先搞题主要做什么.我读了题主的要求,有两种理解: 1. 写一个python脚本,在本机运行.这个脚本的输入是某个文件(含有list数据),输出是一个html文件.这个html文件在本机用浏览器打开以后,可以看到list. 2. 做一个以python为后台语言的web服务器.当客户端访问这个服务器的时候,读取服务器端的某个文件(含有list数据),然后返回给客户端一个含有list内容的html. 请题主明确需求. 鉴于题主刚学,建议先尝试第一种,因为难度低一些.
龙港区17689879569: 如何将python代码嵌入html代码中 - ?
载杜少腹: 用Gestalt能够改变现状的Javascript库与Silverlight结合后,它可以让开发者直接在HTML中嵌入Python,在查看站点源代码时,会看到类似这样的代码: <script language="python">将这句话包含在页面顶部,这就是在着手写Python前所要做的所有准备.它会将内联的Python代码传给Silverlight运行时,该运行时支持Dynamic Language Runtime.
龙港区17689879569: 如何将Python脚本程序执行的结果嵌入到Html中 - ?
载杜少腹: 很简单啊.把html当成文本,让python处理文本,把计算结果嵌入文本.
龙港区17689879569: 能不能做一个html页面,然后按钮的功能用python实现 - ?
载杜少腹: 你好 可以的,不过你需要会javascript和AJAX,AJAX可以在不刷新网页的情况下把数据传给后端,你可以通过HTML来定义按钮,然后通过javascript定义按钮事件,然后通过AJAX把数据传给后端,后端用Python处理后在把数据传给前端,如果你对javascript还不是太熟练的话可以使用jQuery这个javascript库,jQuery简化了很多原生javascript复杂的部分.不过如果你需要的功能能在前端实现的话就尽量不要让后端来作,除非是必须要提交数据给后端处理,因为每次提交数据给后端都要耗费一定的时间,如果遇上网络不好的情况体验会比较差.希望我的回答能够帮助到你,如果还有什么疑问可以继续追问.
龙港区17689879569: python数据可视化的效果如何在web页面中展示 - ?
载杜少腹: 123456789101112131415161718 import matplotlib.pyplot as plt # 绘制折线图 squares = [1, 4, 9, 16, 25]# plt.plot(squares, linewidth=5) # 指定折线粗细,# #plt.show();## #修改标签文字和线条粗细# plt.title("squre number", fontsize=24)# plt....
龙港区17689879569: python可以写html的脚本么,html支持么? - ?
载杜少腹: 用Python可以写浏览器脚本,它最后可以输出HTML代码给WEB服务器但HTML中是不支持Python的(至少目前的浏览器不支持)
龙港区17689879569: 怎么用python将word转成html - ?
载杜少腹: #coding=utf-8 #文件名: #BatchConverWords2Html.py #说明: #批量将一个文件夹下的所有.doc/.docx文件转为.html文件,需要安装对应的win32模块 #调用方式:进入源程序目录,命令:python BatchConverWords2Html.py RootDir from win32...
龙港区17689879569: 应用python CGI将本地的图片显示到HTML上,图片不能显示,请高手解答?
载杜少腹: image文件要保存到web服务器的相对目录下