是否可以像使用PHP一样使用Python进行web开发?在
换句话说,我是否可以在我的HTML中添加一些python代码,这些代码在服务器上运行,并可能添加到HTML中?在
例如,一些PHP代码:
<p>Cheese:</p>
<ul>
<?php
$cheeses = ['brie', 'cheddar', 'death star'];
foreach ($cheeses as $c){
echo "<li>".$c."</li>";
}
?>
</ul>
<p>No more cheese :(</p>
相反,使用python可以是:
^{pr2}$
大多数HTTP服务器是用C/C++编写的,它们不支持Python、Ruby或PHP。对于这种特定的语言有特殊的实现。因此,除非实现了python脚本,否则phpweb服务器将不支持python。但是,您可以使用CGI(仍然受支持)来实现python脚本。但不建议这样做。相反,您应该使用现有的pythonwebfarmework,比如Django、TurboGears、Zope、Bottle或Flasks
pythonweb框架与PHP有很大的不同。在
有一些模板语言,比如Django的模板语言,Jinja2模板引擎。您可以在HTML模板中使用标记,甚至可以使用django的“widthratio”标记进行一些计算。但实际上不建议这样做,因为模板基本上是字符串,python使用带有一些变量的模板来呈现最终的HTML以响应浏览器。在
因此在pythonweb框架中,模板只是用来管理视图显示的,需要将逻辑代码与模板分开。在
如果你想在web开发中使用python,最好用python的方式来思考,python中有很多MVC框架,最好的做法是在controller中编写python代码,把视图渲染留给模板。在
Python本身并不是一种Web开发语言。但是,您可以将它与一些Web框架(如Django、Flask等)一起使用,以便使用模板标记和过滤器在模板中执行操作。对于Django,请参阅Django's built-in tags文档以获得可用操作的完整列表。在
因此,Django模板中等效的
for
循环将如下所示:在这里,您必须在呈现模板时传递带有上下文对象的
cheeses
列表。在相关问题 更多 >
编程相关推荐