Python和显示HTML

2024-06-26 02:17:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Python已经很熟悉了,现在我正在寻找一个基本的web应用程序。我有点害怕Django和其他Python框架,所以我对它进行了深入研究,决定自己使用另一个Python脚本生成HTML。

也许你就是这样做的-但我只是在想办法。我真的想知道下一步该怎么做。

我的Python脚本打印HTML(这甚至正确吗?我需要它出现在网页上,但现在呢?

感谢您在我学习过程中的持续支持。总有一天我会发布答案!

-泰勒

这是我的代码:

from SearchPhone import SearchPhone

phones = ["Iphone 3", "Iphone 4", "Iphone 5","Galaxy s3", "Galaxy s2", "LG Lucid", "LG Esteem", "HTC One S", "Droid 4",
          "Droid RAZR MAXX", "HTC EVO", "Galaxy Nexus", "LG Optimus 2", "LG Ignite",
          "Galaxy Note", "HTC Amaze", "HTC Rezound", "HTC Vivid", "HTC Rhyme", "Motorola Photon",
          "Motorola Milestone", "myTouch slide", "HTC Status", "Droid 3", "HTC Evo 3d", "HTC Wildfire",
          "LG Optimus 3d", "HTC ThunderBolt", "Incredible 2", "Kyocera Echo", "Galaxy S 4g",
          "HTC Inspire", "LG Optimus 2x", "Samsung Gem", "HTC Evo Shift", "Nexus S", "LG Axis", "Droid 2",
          "G2", "Droid x", "Droid Incredible" 
          ]

print """<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>table of phones</title>
</head>

<body>
</body>
</html>
"""

#table
print '<table width="100%" border="1">'
for x in phones:
    y = SearchPhone(x)
    print "\t<tr>"
    print "\t\t<td>" + str(y[0]) + "</td>"
    print "\t\t<td>" + str(y[1]) + "</td>"
    print "\t\t<td>" + str(y[2]) + "</td>"
    print "\t\t<td>" + str(y[3]) + "</td>"
    print "\t\t<td>" + str(y[4]) + "</td>"
    print "\t</tr>"
print "</table>"

Tags: 脚本httphtmltablegalaxytdprintiphone
3条回答

不幸的是,你说得不太对。

对于python web开发,作为初学者,你应该选择一个web开发框架(Django,Flask,battle)如果你害怕Django,我建议你试着看看web.py/battle,它们非常相似,很容易跟上,你会学到基本的web开发技巧,了解工作流,交互等等

或者,你只想写一个静态网页,只想写一个扩展名为“htm”“html”的文件

html_str = "<html><head>This is header</head><body>This is body</body></html>"
f = open("yourpage.html","w")
f.write(html_str)
f.close()

然后,您可以打开“your page.html”获得第一个用Python编写的静态网页。。

尽管这个问题有几年了。。。

如果您使用的系统具有一个合适的shell(您应该这样做),那么您可以保持代码的原样(即写入stdout),并将输出重定向到一个文件:

$ python html_generating_program.py > output.html

使用Flask框架,您可以在5分钟内编写第一个webapp,遵循tutorial。一开始可能比Django容易。

默认情况下,Flask使用Jinja2模板引擎。你可以这样写:

<table>
{% for phone in phones %}
    <tr><td>{{ phone.name }}</td></tr>
{% endfor %}
</table>

其中phones是传递给模板的Python变量。不太复杂吧?

相关问题 更多 >