Python 如何使用Brython导入库

Python 如何使用Brython导入库,python,brython,Python,Brython,我希望在布莱顿导入我自己的库。声称通过向python路径添加适当的目录来演示如何实现,但我无法使其工作,因为我无法使Brython导入sys 下面是Brython文档第一页中最简单的示例代码: <html> <head> <script src="../src/Brython3.2.8/brython.js"></script> </head> <body onload="brython()"> <script typ

我希望在布莱顿导入我自己的库。声称通过向python路径添加适当的目录来演示如何实现,但我无法使其工作,因为我无法使Brython导入sys

下面是Brython文档第一页中最简单的示例代码:

<html>
<head>
<script src="../src/Brython3.2.8/brython.js"></script>
</head>
<body onload="brython()">
<script type="text/python">
  from browser import document, alert

  def echo(ev):
    alert(document["zone"].value)

  document['mybutton'].bind('click', echo)
</script>
<input id="zone"><button id="mybutton">click !</button>
</body>
</html>
那么,如何在brython中导入sys,和/或如何在python中导入自己的库


谢谢。

您需要在html代码中包含
brython\u stdlib.js
。因此,您的html应该如下所示:

<html>
    <head>
        <script src="../src/Brython3.2.8/brython.js"></script>
        <script src="../src/Brython3.2.8/brython_stdlib.js"></script>
    </head>
    <body onload="brython()">
        <script type="text/python">
            import sys
            from browser import document, alert

            def echo(ev):
                alert(document["zone"].value)

            document['mybutton'].bind('click', echo)
        </script>
        <input id="zone"><button id="mybutton">click !</button>
   </body>
</html>

导入系统
从浏览器导入文档,发出警报
def回波(ev):
警报(文档[“区域”]值)
文档['mybutton'].bind('click',echo)
点击
源代码:

已部署代码:


布莱顿
身体{
/*背景颜色:黄色*/
背景图片:url(https://images.unsplash.com/photo-1573196872258-41425124bf5d?ixlib=rb-1.2.1&ixid=eyjhcbfawqiojeymdd9&auto=format&fit=crop&w=1050&q=80);
/*背景重复:无重复*/
}
从浏览器导入文档
def计算(a、b、o):
d={'+':a+b,
“-”:a-b,
“*”:a*b,
“/”:a/b,
“%”:a%b
}
返回f“({a}{o}{b})=({d[o]})”
a=浮点(输入('输入第一个数字:'))
b=浮动(输入('输入第二个数字:'))
o=输入('输入运算符(+、-、*、/、%):')
文件
brython.js:6929 XMLHttpRequest cannot load file:///C:/Users/XXXXXXXXX/XXXXXX/src/Brython3.2.8/Lib/sys.py?v=1476283159509. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
    $download_module    @ brython.js.6929
    import_py           @ brython.js.6929
    exec_module         @ brython.js.6929
etc etc
<html>
    <head>
        <script src="../src/Brython3.2.8/brython.js"></script>
        <script src="../src/Brython3.2.8/brython_stdlib.js"></script>
    </head>
    <body onload="brython()">
        <script type="text/python">
            import sys
            from browser import document, alert

            def echo(ev):
                alert(document["zone"].value)

            document['mybutton'].bind('click', echo)
        </script>
        <input id="zone"><button id="mybutton">click !</button>
   </body>
</html>
<!doctype html>
<html>

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Brython</title>

  <script
    type="text/javascript"
    src="https://cdn.jsdelivr.net/npm/brython@3.8.9/brython.min.js">
  </script>

  <script
    type="text/javascript"
    src="https://cdn.jsdelivr.net/npm/brython@3.8.9/brython_stdlib.js">
  </script>

  <link
    rel="stylesheet"
    href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css"
    integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk"
    crossorigin="anonymous">

</head>
  <body onload="brython()">

    <style>
    body {
        /* background-color: yellow; */
        background-image: url(https://images.unsplash.com/photo-1573196872258-41425124bf5d?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1050&q=80);
/*         background-repeat: no-repeat; */
    }
    </style>

    <script type="text/python">

      from browser import document

      def calc(a, b, o):
        d = { '+' : a+b,
              '-' : a-b,
              '*' : a*b,
              '/' : a/b,
              '%' : a%b
            }

        return f"({a}{o}{b})=({d[o]})"

      a = float(input('Enter first number : '))
      b = float(input('Enter second number : '))
      o = input('Enter the Operator (+,-,*,/,%) : ')

      document <= calc(a, b, o)

    </script>
  </body>
</html>