[英]can't import local file from same folder - Reportmissingimport
我正在處理 Visual Studio 代碼,無法從項目文件夾中導入文件,該文件夾是項目的文件夾
一個代碼
import frame
在“框架”一詞上加下划線並產生以下 output:
Import "frame" could not be resolvedPylancereportMissingImports
我嘗試了很多關於 SO 上類似問題的解決方案,我檢查了全局變量 ComSpec,它的值是正確的 - C:\WINDOWS\system32\cmd.exe,我安裝了,我將"python.analysis.extraPaths"
設置為["frame", "charts", "app"]
並為python.defaultInterpreterPath
(它之前的值只是 'python')。 有趣的是 - 我之前沒有settings.json
。json 值,我通過在 Visual Studio 代碼中打開設置自己創建它。它在.vscode
settings.json
中
我還使用import-ipynb
找到了另一個答案,我將在下面粘貼:
從命令提示符安裝我的助手庫:
pip install import-ipynb
從您的筆記本中導入它:
import import_ipynb
現在
import
您的.ipynb
筆記本,就好像它是一個.py
文件一樣import TheOtherNotebook
這個 python-ipynb 模塊只是一個文件,它嚴格遵守 jupyter 網站上的官方指南。
PS 它還支持
from A import foo
,from A import *
等PPS 適用於子目錄:
import AB
在上面鏈接的同一個問題上,還有這個額外的答案也可能會有所幫助,我將其粘貼在下面:
跑
!pip install ipynb
然后將另一個筆記本導入為
from ipynb.fs.full.<notebook_name> import *
或者
from ipynb.fs.full.<notebook_name> import <function_name>
確保所有筆記本都在同一個目錄中。
編輯1:您可以在此處查看官方文檔-https://ipynb.readthedocs.io/en/stable/
此外,如果您只想從筆記本導入 class 和 function 定義(而不是頂級語句),則可以使用 ipynb.fs.defs 而不是 ipynb.fs.full。 完整的大寫變量賦值也將被評估。
嘗試通過添加__init__.py
文件將目錄轉換為 package。 這是它如何工作的示例:
目錄結構:
ProjectRoot:.
│ frame.py
│ other.py
│ __init__.py
frame.py
:
MSG = "Hello World"
other.py
:
import frame
print(frame.MSG)
__init__.py
:
# Empty file
如果你要運行other.py
,你會得到:
Hello World
這是python 導入系統文檔的鏈接
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.