Python 在Mac上导入shell中的模块
我最近开始阅读Mark Lutz的第四版《学习Python》。我下载了最新版本的Python(v3.7)和IDLE,并且在Mac上运行。我在尝试导入模块时遇到问题。 在第54页,它说用以下代码创建一个脚本threenames.py:Python 在Mac上导入shell中的模块,python,python-import,python-module,Python,Python Import,Python Module,我最近开始阅读Mark Lutz的第四版《学习Python》。我下载了最新版本的Python(v3.7)和IDLE,并且在Mac上运行。我在尝试导入模块时遇到问题。 在第54页,它说用以下代码创建一个脚本threenames.py: a = 'dead' b = 'parrot' c = 'sketch' 我已经在我的桌面上保存了这个。接下来,我打开一个shell: import threenames 并且输出应该是死鹦鹉草图 但是,我收到了错误消息: 回溯(最近一次呼叫最后一次):
a = 'dead'
b = 'parrot'
c = 'sketch'
我已经在我的桌面上保存了这个。接下来,我打开一个shell:
import threenames
并且输出应该是死鹦鹉草图
但是,我收到了错误消息:
回溯(最近一次呼叫最后一次):
我的
系统路径是['''/Users/xxxx/Documents'、'/Library/Frameworks/Python.framework/Versions/3.7/lib/Python.37.zip'、'/Library/Frameworks/Python.7/Python.framework/Versions/3.7/lib/Python.7/lib-dynload'、'/Library/Frameworks/Versions/Python.3.7/site-packages']由于您的桌面文件夹位于/Users/xxx/Desktop
,并且未列在sys.path
中,您可以将文件移动到/Users/xxx/Documents
(主目录中的Documents文件夹)或者在启动python之前,在shell中做一个cd~/Desktop
,因为sys.path
包含'
,它指的是当前的工作目录
但是,仅导入该模块不会使这些变量在shell中可访问,您必须显式导入它们:
from threenames import a, b, c
文件必须在当前的工作目录中。然后导入它是没有问题的。有两种方法可以实现这一点
只需从存储.py文件的同一文件夹中打开pythonshell即可。工作目录始终设置为启动pythonshell的位置
只需在代码中更改您的工作目录。只需调用:
导入操作系统
chdir(“/directory/with/your/pyfile/”)
从何处打开外壳?如果不是Users/xxxx/Desktop
,python将无法找到您的模块-系统搜索当前目录,然后搜索sys.path
,就是这样。您需要从其他位置打开python外壳,或者将threenames.py
移动到python所在的位置能够看到它(例如,到/Users/xxx/Documents
)