【问题标题】:How can I include python script in a HTML file?如何在 HTML 文件中包含 python 脚本?
【发布时间】:2010-11-12 03:17:35
【问题描述】:

这个python脚本怎么放:

a = ['f','d','s','a']
x = -1
scope = vars()
for i in a:
    scope['x']+=1
    print a[x]

在 html 文件中?

【问题讨论】:

  • Python 不像 PHP,你不能把它作为脚本嵌入到 HTML 中。
  • @Rafe 这更有意义。起初我以为他的意思是用 HTML pre 标签格式化。
  • @chrisaycock 我也这么认为并回答了。 @ones 你不能只在 html 中编写一些 python 代码并执行,有一些框架可以在 django、app-engine、web2py 等网络技术中使用 python。Python 不是像 javascript 这样的浏览器脚本语言。
  • ...您到底想通过编辑vars() 返回的dict 来实现什么?

标签: python html


【解决方案1】:

这样的东西,如果你想创建一个html,不一定显示它:

 html_file = open('namehere.html','w')
 a = ['f','d','s','a']
 x = -1
 scope = vars()
 data = ''
 for i in a: #TIP: use a generator
     scope['x']+=1
     data += a[x]
     data += '\n'
 html_file.write(data)
 html_file.close()
【解决方案2】:

如果您的网络服务器支持它,您可以将其作为 CGI 脚本运行以输出 HTML 文件 - 更多信息请点击此处:http://www.penzilla.net/tutorials/python/cgi/

您需要修改脚本以输出有效的 HTML,但该教程应该可以帮助您入门。

祝你好运!

【讨论】:

    【解决方案3】:

    不可能。 Python 不像 PHP。我不能这样做

    <?php
    

    一切顺利。

    但是,如果您的网络服务器有 Python 解释器(现在大多数都有),您可以编写 CGI(通用网关接口)脚本来让 Python 代码在您的网页上运行。

    如果您尝试生成动态内容(例如在 HTML 中更改单词),Javascript 或 PHP 会更好。 Python 更适合 Web 应用程序。

    【讨论】:

      【解决方案4】:

      也许 CGI 就是您要找的东西:

      http://docs.python.org/library/cgi.html

      http://www.penzilla.net/tutorials/python/cgi/

      例如:

      print "Content-Type: text/html"     # HTML is following
      print                               # blank line, end of headers
      
      print "<html><head></head><body><pre>"
      a = ['f','d','s','a']
      x = -1
      scope = vars()
      for i in a:
          scope['x']+=1
          print a[x]
      print "</pre></body></html>"
      

      希望这会有所帮助。祝你好运!

      【讨论】:

        【解决方案5】:

        如果脚本在服务器中,您可以通过 JSON-RPC 使用远程函数调用来运行它
        你可以参考JSON-RPC documentation here

        【讨论】:

          【解决方案6】:

          您可以在 html 中使用 {% %} 标签,并在其中编写您的 python 代码。

          【讨论】:

            【解决方案7】:

            &lt;body&gt;&lt;head&gt; 标签包围它,你就是金子。

            但说真的,我认为您要做的是打印 fdsa,它看起来像这样:

            <head>
            <body>
            fdsa
            </body>
            </head>
            

            你所拥有的并不是真正的 python 脚本。您可能需要先纠正它,然后再多解释一下您要做什么。

            【讨论】:

            • @ones 您想以 HTML 文件作为输入序列而不是示例“a”变量来运行脚本吗?
            【解决方案8】:

            您可以将事物转换为 HTML 或 JavaScript。大概是这样的:

            <script>
            var a = ['f','d','s','a']
            var x = -1
            //other code
            </script>
            

            我没有展示其余部分,因为我不确定如何制作重复循环。

            【讨论】:

              【解决方案9】:

              您不能。如果您想在 HTML 文件中运行脚本,请尝试其他语言,例如 JavaScript 或 PHP。要包含 javascript,请输入:

              <script type="text/javascript">
                  // ...
              </script>
              

              或者在 HTML5 中,您甚至不必输入 type 属性:

              <script>
                  // ...
              </script>
              

              要包含 PHP,请键入

              <?php
                  // ...
              ?>
              

              【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2017-04-06
              • 1970-01-01
              • 2017-07-08
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2010-11-06
              相关资源
              最近更新 更多