浏览器中的Brython和python脚本

时间:2017-10-07 07:50:06

标签: python brython

我尝试使用Brython。我有一个Python脚本(test.py),我想在浏览器中显示该脚本的结果。

我试过了:

<html>
<head>
<script src="brython.js"></script>
</head>
<body onload="brython()">
<script type="text/python" src="test.py"></script>
</body>
</html>

我的脚本是:

x = int(input("Value: "))
x = pow(x,2)
print("Result: " + str(x))

不幸的是,我无法在浏览器中显示结果。有什么遗失的吗?

2 个答案:

答案 0 :(得分:3)

在Brython中,print显示在浏览器控制台中。

如果要在HTML文档中写入结果:

from browser import document

x = int(input("Value: "))
x = pow(x, 2)

document <= "Result: " + str(x)

[edit]另一个选项是将sys.stdout设置为使用write()方法的对象,例如模块浏览器中的document

from browser import document
import sys

sys.stdout = document
print("Hello", "world !")

答案 1 :(得分:1)

为标记添加id ='fish',然后在python中覆盖它:

<body id='fish' onload='brython()'>

然后:

d = document['fish']
d.clear()
d <= "Result: %s" % str(x)

请注意,您需要首先调用元素.clear(),&lt; = 与Javascript .appendChild()相同,请参阅文档:https://brython.info/static_doc/en/cookbook/content_in_div.html

如果你想在适当的XHTML页面中看到它,请不要替换整个身体,而只是替换一个div元素/标签。或者使用所有需要的XHTML标记覆盖整个身体。