我想用Python创建一个变量,然后在JavaScript中用console.log()变量。我知道如何在JavaScript中访问变量,但是我不知道如何在加载页面时运行Python脚本。我该怎么办?
答案 0 :(得分:1)
与Javascript不同,您不能直接在浏览器中运行Python。您将需要Python才能运行服务器端。一种可能的替代方法是使用transcrypt为仅前端解决方案生成与Python等效的javascript。
例如,transcrypt允许您将python模块“导入”到JavaScript中。在这里,一个名为hello.py
的python脚本被“导入”到上下文中,可以像hello.solarSystem.greet()
这样的形式被称为javascript
<script type="module">import * as hello from './__target__/hello.js'; window.hello = hello;</script>
<h2>Hello demo</h2>
<p>
<div id = "greet">...</div>
<button onclick="hello.solarSystem.greet ()">Click me repeatedly!</button>
<p>
<div id = "explain">...</div>
<button onclick="hello.solarSystem.explain ()">And click me repeatedly too!</button>
有关更多信息,请参见transcrypt文档。
否则,您可能会在此用例的后端运行Python网络服务器。像flask
之类的东西。
from flask import Flask, render_template_string
app = Flask(__name__)
def do_something():
"""Returns an interesting value"""
return "foo"
template = """
<html>
<script>
console.log('{{ value }}')
</script>
"""
@app.route('/')
def home():
my_value = do_something()
return render_template_string(template, value=my_value)
app.run(debug=True)