python - 我们可以像在 php 中一样在 python 中生成网页吗?

标签 python web

我们可以用 python 语言编写吗(或者可能存在这样的 web 框架),我们可以像用 PHP 语言一样编写 Python 和 html 标签。

我们能不能有这样一个python文件结构:

some_python_file.py:

<html>
<head>
     <title>Lol</title>
<head>
<body>
    My PyWeb Slang
</body>
</html>

<!-- this part should be python -->
<?py
    from Eternity import Kiss

    love = Kiss.Forever()
    print "%s" % love
?>

抱歉,我写的是大写字母:DISAMBIGUATION:

您可以看到,该模板在每一行中使用 {% goodies %} 或 <%= goodies %>

{% extends "layout.html" %}
{% block body %}
  <ul>
  {% for user in users %}
    <li><a href="{{ user.url }}">{{ user.username }}</a></li>
  {% endfor %}
  </ul>
{% endblock %}

但是在 PHP 中:

<div>Good Morning, Sun!</div>
<?php

     echo "Happy!";
     echo "Hi, WaterLand!";

?>

如果 Python 可以那样做,它应该是这样的:

<div>Good Morning, Sun!</div>

<?py

     print "%s" % "Happy!"
     print "%s" % "Hi, WaterLand!";

?>

明白了,还是我需要更明确一点?

谢谢。 :)

嗯,如果是的话:

我们可以用 mod_python 编写类似的东西吗(扩展下面的 [morphyn] 示例):

<html>
<%
    greet = 'Hello Wee!'
    answer = 'Hello Bee!'
%>
<h1><%= greet %></h1>
<h2><%= answer %></h2>
</html>

你可以在 <% ... %> 中看到超过 2'u 行 我们可以吗?

最佳答案

这不完全是您的要求,但正确的方法是使用模板引擎。看看Jinja2 . Django还提供了自己的模板引擎。

更新:

默认情况下,Python 不能嵌入到 HTML 页面中。然而,至少有一种方法可以做到这一点。 mod_python 是 Apache2 的一个模块,通过 PSP 提供了您想要的那种功能。 (Python 服务器页面)。

<html>
<%
    greet = 'Hello'
%>
<h1><%= greet %></h1>
</html>

请记住,混合逻辑和表示通常不是一个好主意。正确的方法仍然是使用模板引擎,如我原来的回答所述。你可能有很好的理由去做你想做的事,但也可能没有。

关于python - 我们可以像在 php 中一样在 python 中生成网页吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14709346/

相关文章:

python - Biopython密码表错误?

html - 带有位置固定按钮的溢出滚动框

android - 如何在 Android 设备中创建 Web 服务器(用于远程访问)

apache - 虚拟主机和DNS的概念

jquery - Python jquery 网页游戏

javascript - 在现有脚本中显示/隐藏 div

python - 尝试在 django 中执行表单时,int() 参数必须是字符串

python - 如何在一个函数中休眠而不休眠整个程序

python - Collat​​z 环结构

python - 安装 Cython/Statsmodels