我尝试使用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))
不幸的是,我无法在浏览器中显示结果。有什么遗失的吗?
答案 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标记覆盖整个身体。