[英]Why can't python import a simple function from a module I created?
我正在嘗試做一些 numpy 或 scipy 軟件包未涵蓋的數學運算。 由於我必須多次進行這些計算,我想我會在自己的mathystuff.py模塊中創建自己的 function 並將其導入我的工作區。 很簡單,除了 python 不喜歡導入 function:這就是我所做的:
首先,我創建了我的文件mathystuff.py ,它位於我的venv/lib/python3.7/site-packages/文件夾中,就像我的模塊的 rest 一樣。
import numpy as np
def mathfunction(input1, input2):
#do some math calculations here - lots of np.stuff()
#and some more math calculations here, you get it
return answer
就那么簡單。 在我的主要項目中,我簡單地調用:
from mathystuff import mathfunction
我遇到錯誤的地方cannot import name 'mathfunction' from 'mathystuff'
將我指向.py文件的正確位置。 我之前已經做過一百萬次了,甚至用我在同一個項目中制作的其他模塊也做過這個,那么為什么會發生這種情況呢?
可能有很多原因,但根據提供的有限信息,我將 go 與我認為最有可能的那些。 (PS 我會評論問問題,但不幸的是我沒有足夠的代表)。
檢查是否:
which python
來檢查 python 的位置(或者如果您使用 python3 運行代碼,則輸入which python3
python3
)。 這將返回目錄 python (例如: path/to/folder/venv/bin/python3
)。 在處理多個 venv 時,很容易混淆並在venvA
處於活動狀態時venvB
。這些是迄今為止我遇到的最常見的錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.