Pyscript說沒有目錄但有
P粉170858678
P粉170858678 2024-01-10 17:21:06
0
1
407

我遇到了一個令人沮喪的問題,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 不允許我這樣做。同時,我會一次又一次地嘗試。

P粉170858678
P粉170858678

全部回覆(1)
P粉366946380

使用 pyscript 時,程式碼在虛擬檔案系統中運作。如果你運行

<html>
  <head>
    <link rel="stylesheet" href="https://pyscript.net/latest/pyscript.css" />
    <script defer src="https://pyscript.net/latest/pyscript.js"></script>
  </head>
  <body>
    <py-script> import os;print(os.getcwd())</py-script>
  </body>
</html>

您應該獲得/home/pyodide,這是該虛擬檔案系統的根目錄。您的資料夾和檔案無法透過該虛擬系統直接存取(這是 Javascript 應用程式的限制)。

從檔案系統存取資料最簡單的方法是使用 標記來取得檔案(更多資訊此處)。

<html>
  <head>
    <link rel="stylesheet" href="https://pyscript.net/latest/pyscript.css" />
    <script defer src="https://pyscript.net/latest/pyscript.js"></script>
  </head>
  <body>
    <py-config> 
      [[fetch]] 
      files = ["/path/to/your/file"] </py-config>
    <py-script>
      pot1 = open("/path/to/your/file", "r").readline()
      print(pot1)
    </py-script>
  </body>
</html>

如果您像這樣更新檔案並嘗試存取它,您仍然會遇到錯誤。這是因為 fetch 方法通常用於從遠端伺服器載入內容,但在您的情況下,您可以透過執行來執行一個簡單的 python Web 伺服器

python3 -m http.server

然後訪問您的頁面 http://0.0.0.0:8000/yourfile.html一个>.

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!