首页 文章

在Mac上导入shell中的模块

提问于
浏览
0

我最近开始阅读第四版Mark Lutz的书“学习Python” . 我下载了最新版本的Python(v3.7)和IDLE,我在Mac上运行 . 我在尝试导入模块时遇到问题 . 在页54,它说使用以下代码创建一个脚本threenames.py:

a = 'dead' 
b = 'parrot' 
c = 'sketch'

我把它保存在我的桌面上 . 接下来我打开一个shell:

import threenames

并且输出应该是 dead parrot sketch 但是,我收到错误消息:

Traceback(最近一次调用最后一次):文件“<pyshell#0>”,第1行,在<module>中导入threenames ModuleNotFoundError:没有名为'threenames'的模块

我的 sys.path 是['', ' / Users / xxxx / Documents ', ' /Library/Frameworks/Python.framework/Versions/3.7/lib/python37.zip ', ' /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7 ', ' /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload ', ' /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages']

2 回答

  • 0

    由于您的桌面文件夹位于 /Users/xxx/Desktop 并且未在 sys.path 中列出,您可以将文件移动到 /Users/xxx/Documents (主目录中的Documents文件夹)或在启动python之前在shell中执行 cd ~/Desktop ,因为 sys.path 包含 '' ,它指的是当前工作目录 .

    但是,只是导入该模块不会在shell中访问这些变量,您必须显式导入它们:

    from threenames import a, b, c
    
  • 0

    该文件必须位于当前的工作目录中 . 然后导入它没有问题 . 有两种方法可以实现这一目标 .

    • 只需从存储.py文件的同一文件夹中打开您的python shell . 工作目录始终设置为启动python shell的位置 .

    • 只需在代码中更改工作目录即可 . 只需致电:

    import os os.chdir(“/ directory / with / your / pyfile /”)

相关问题