我是Python的新手,我正在努力访问以前创建的类/模块,以及访问我在IDLE和Jupyter笔记本中下载的库/包(如Scipy,pandas和matplotlib)。我在Windows下使用Python 3.4。
当我使用像
这样的语句时from ClassName import ClassName
为了访问已定义这些类的以前保存的.py文件,我收到以下错误消息:
ImportError:没有名为'ClassName'的模块
如果我没有误会,这很可能意味着当我提供这些import语句时,或者当我想使用.py文件时,Python的解释器不会“找到正确的位置”。但是,我还没有(还)能够更改/添加PATHS
所以我的问题是:
如何确保我可以访问IDLE中以前保存的.py文件? 如何在Jupyter中访问这些.py文件?
提前致谢!
KR
答案 0 :(得分:0)
在IDLE中点击File
,Open
,然后找到.py
文件所在的目录,找到该文件并将其打开。
同样,在Jupyter中单击File
标记,然后您将看到计算机中所有文件夹的列表。找到该文件夹,然后打开.py
文件。
答案 1 :(得分:0)
在笔记本类型中:
ls
显示当前目录中的所有文件。如果显示名为my_file.py
的文件,则可以将其导入:
import my_file
并且可以使用它:
my_file.ClassName
通常,当前工作目录位于Python的模块搜索路径(*.py
文件)上。因此,在笔记本中使用命令cd <path/with/my/module>
将带您进入模块所在的路径。现在,您可以导入模块。
您可以查看Python搜索模块的位置:
import sys
print(sys.path)
应显示路径名称列表:
['',
'a/path/to/somewhere',
....
]
''
代表当前的工作目录。
答案 2 :(得分:0)
我会回答IDLE。首先,通常不会在IDLE 中下载第三方软件包。 (有人建议改变这个,但有人必须编写一些代码。)相反,有人会在命令行下载pip(python安装程序)。默认情况下,pip会将包放在搜索路径上的site-packages目录中。 3.4在Windows上安装了pip。有关使用pip的信息,请参阅此处的文档和问题。
对于您自己的代码,在您可以写入的目录中创建一个目录,例如“mypy”,例如您的主目录/ users / theo(或您的登录名)。编辑新文件,并编写类似
的内容print('myclass imported')
class MyClass:
def __init__(self): print('MyClass instance')
在mypy目录中另存为'myclass'。现在打开另一个新文件并编写
import myclass
mc = myclass.MyClass()
在mypy中保存任何名称('mycode'?)。然后按F5运行它,你应该看到两行打印。