我是PyCharm的新手,我很难导入我写入Python控制台的模块。如果我尝试导入Python本机的模块,我可以毫无困难地导入该模块但是如果我尝试导入我编写的模块,我会得到一个ImportError:没有名为'ModuleITriedToImportName'的模块。例如,这里有一个简单的自编写模块来挑选名为“filepickle”的文件:
import pickle
def saveDbase(filename, object):
file = open(filename, 'wb')
#pickle.dump(object, file) # pickle to file
#pickle.dump(object, open(filename, 'wb'))
pickle.dump(object, file)
file.close() # any file-like object will do
def loadDbase(filename):
file = open(filename, 'rb')
object = pickle.load(file) # unpickle from file
file.close() # recreates object in memory
return object
如果我尝试在PyCharm Python控制台“导入pickle”,那么导入工作没有任何错误。如果我尝试“导入filepickle”,我收到错误消息:
ImportError: No module named 'filepickle'
如果我在PyCharm中运行filepickle,模块filepickle工作正常但我无法在Python控制台中导入filepickle。如果有人知道如何让PyCharm允许我导入我写入PyCharm Python控制台的模块,我将不胜感激。
答案 0 :(得分:1)
我无法重现您的错误(PyCharm 5.0.4,OS X 10.10.5,Python 3.4.3 / 2.7.6)。 您可以尝试在控制台中运行此代码以找出当前的工作目录,如果它与filepickle的不同,那么很可能就是问题。
import os
os.getcwd()
答案 1 :(得分:0)
我有完全相同的问题。
解决方案是将模块目录标记为" Source Root",并将Python配置为导入" Source Root"目录。
有关如何执行此操作的屏幕截图,请参阅Contango的答案:
PyCharm does not recognize modules installed in development mode
恕我直言,这是PyCharm中的一个错误:这应该可行,并且它不需要两个单独的步骤来使任何工作。
此问题出现在Windows 10上的PyCharm Community Edition 2017.2.3中(也可能是Linux)。