我遇到了一个令人沮丧的问题,pyscript 说该目录不存在。但确实如此。我有一个名为“pot1”的文件,pyscript 似乎没有看到它。 我已经重写了超过893次目录,并且尝试查找问题,我已经正确地将目录写入文件。
<py-script> pot1 = open("C:/Plant Lab/sav/garden/pots/pot1", "r").readline() </py-script>
但我只得到这个。
Traceback (most recent call last): File "/lib/python3.10/_pyodide/_base.py", line 460, in eval_code .run(globals, locals) File "/lib/python3.10/_pyodide/_base.py", line 306, in run coroutine = eval(self.code, globals, locals) File "<exec>", line 1, in <module> FileNotFoundError: [Errno 44] No such file or directory: 'C:/Plant Lab/sav/garden/pots/pot1'
我尝试在谷歌上搜索,但最终只得到了非常基本的答案,例如“你正确地编写了目录吗?”,我不知道还能做什么。我尝试过使用 \ 而不是 /。尝试找出它是什么目录,但 CORS 不允许我这样做。与此同时,我会一次又一次地尝试。
使用 pyscript 时,代码在虚拟文件系统中运行。如果你运行
您应该获得
/home/pyodide
,这是该虚拟文件系统的根目录。您的文件夹和文件无法通过该虚拟系统直接访问(这是 Javascript 应用程序的限制)。从文件系统访问数据的最简单方法是使用
标记来获取文件(更多信息此处)。如果您像这样更新文件并尝试访问它,您仍然会遇到错误。这是因为 fetch 方法通常用于从远程服务器加载内容,但在您的情况下,您可以通过运行来运行一个简单的 python Web 服务器
python3 -m http.server
然后访问您的页面 http://0.0.0.0:8000/yourfile.html一个>.