首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
宝塔
V2EX  ›  Python

Mac 运行 Python 文件报错: ModuleNotFoundError: No module named 'XXX'!

  •  
  •   iQiQi · 40 天前 · 1007 次点击
    这是一个创建于 40 天前的主题,其中的信息可能已经有所发展或是发生改变。

    大家好,请教一个 Python 报错问题。

    我在 Mac 终端运行 Python 文件.py 时一直报错:

    
    print('ModuleNotFoundError: No module named 'baidu_theme_spider'')
    
    

    在网上查找了一些方法均失效,最常用的方法是在.py 文件中加入以下代码:

    
    import sys
    import os
    curPath = os.path.abspath(os.path.dirname(__file__))
    rootPath = os.path.split(curPath)[0]
    sys.path.append(rootPath)
    
    

    不过我在.py 文件中添加成功后再次运行仍然报错,不知道大家有没有遇到过这个问题?

    谢谢

    15 回复  |  直到 2019-10-28 18:44:13 +08:00
        1
    aborigine   40 天前
    你装了 baidu_theme_spider 这个 module 吗
        2
    aborigine   40 天前
    或者你有这个 baidu_theme_spider.py 文件吗
        3
    iQiQi   40 天前
    @aborigine 忘了修改,那是一个文件名!
        4
    renmu   40 天前 via Android
    你应该贴一下你的文件树结构,不然没办法判断
        5
    BBCCBB   40 天前
    搜一下 python -m
        6
    ClericPy   40 天前
    我感觉你的 cwd 的问题...

    首先, 搞懂各种路径的意思
    cwd pwd 等等
    其次, 这个时代别纠结 os.path 了, 直接用 pathlib
    再次, importlib 可以解决一部分绝对路径的引用问题
        7
    wongyusing   40 天前
    你贴一下项目结构。
    我估计你的目录里面没有 __init__.py 文件
        8
    Trim21   40 天前 via Android
    贴一下你的文件目录结构以及你终端工作路径的位置

    python3 里没有 init 文件也能正常从子文件夹里面直接 import 对应文件,所以这个多半不是问题
        9
    careofzm   40 天前
    尝试了一下,并没有发现问题
    首先,Python 会将当前执行文件的所在的文件夹自动加入 path
    你的代码会将当前执行文件的所在的文件夹的上级文件夹加入 path
    如果你的 baidu_theme_spider 是自己写的, 在这两文件夹内是不会找不到的
        10
    iQiQi   36 天前
    @renmu 嗯嗯,十分感谢!是引入文件路径的问题,已正常,谢谢!
        11
    iQiQi   36 天前
    @BBCCBB 嗯嗯,十分感谢!是引入文件路径的问题,已正常,谢谢!
        12
    iQiQi   36 天前
    @ClericPy 是的,是文件路径的问题,已正常,谢谢!
        13
    iQiQi   36 天前
    @Trim21 嗯嗯,引入文件路径的问题!
        14
    ClericPy   36 天前
    @iQiQi 偷偷提一句... 可以在一次回复里用回车隔开多个人的引用什么的... 省不少铜币
        15
    iQiQi   24 天前
    @ClericPy 哦哦,谢谢,用的比较少!
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2683 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 24ms · UTC 12:59 · PVG 20:59 · LAX 04:59 · JFK 07:59
    ♥ Do have faith in what you're doing.