Python 为什么导入仅在未运行配置的情况下运行?
在PyCharm中,我有一个公共模块(称为common.py),我想从其他几个文件导入它。它以前工作得很好,直到最近我使用Ctrl+Enter运行程序。从那时起,我现在只能用Ctrl+Enter运行代码,使用正常的运行配置无法识别导入;它表示“未使用的导入”,不解析对common.py中方法的引用。以下是我试图运行的文件中的代码:Python 为什么导入仅在未运行配置的情况下运行?,python,pycharm,Python,Pycharm,在PyCharm中,我有一个公共模块(称为common.py),我想从其他几个文件导入它。它以前工作得很好,直到最近我使用Ctrl+Enter运行程序。从那时起,我现在只能用Ctrl+Enter运行代码,使用正常的运行配置无法识别导入;它表示“未使用的导入”,不解析对common.py中方法的引用。以下是我试图运行的文件中的代码: from matplotlib import pyplot as plt from matplotlib import colors as cl from commo
from matplotlib import pyplot as plt
from matplotlib import colors as cl
from common import *
N = np.arange(5, 30, 1, int)
get_noiseless_eigenvalues(np.matrix([[1]]))
PyCharm无法解析np
和get_Noise_特征值
,即使它们共同存在。py:
import numpy as np
def get_noiseless_eigenvalues(m: np.matrix):
return [v for v in np.linalg.eigh(m)[1] if sum(v) == 0]
我检查了目录是否仍然标记为根目录。这里有什么问题
编辑:我用git检查了更改,结果发现在两个位置添加了一个空的_uinit__uu.py;现在,我至少可以正常运行该程序,但我仍然想知道为什么会发生这种情况很难判断这里出了什么问题,但一般来说,不要使用
*
导入来避免混淆。确保工作目录
在您的运行配置中是正确的添加\uu init\uuuuuuuupy
会更改“目录”进入一个Python包
,该包更改了可导入内容的规则。Python文档提供了更多信息:很难判断这里出了什么问题,但一般来说,不要使用*
导入以避免混淆。确保工作目录
在您的运行配置中是正确的添加\uu init\uuuuuuuuuupy
会将“目录”更改为Python包
,这将更改可导入内容的规则。Python文档提供了更多信息: