Macos 模块搜索路径未通过添加_init__.py和编辑PYTHONPATH修复

Macos 模块搜索路径未通过添加_init__.py和编辑PYTHONPATH修复,macos,python-3.x,pythonpath,Macos,Python 3.x,Pythonpath,我有一个非常类似的问题。我也在编写Python第四版。我正在使用mac powerbook。我的目录结构类似于: programming\ python ├── PP4E │   ├── GUI │   │   ├── Tour │   │   │   ├── __init__.py │   │   │   ├── demoAll-prg.py │   │   │   ├── demoAll-win.py │   │   │   ├── demoCheck.py │   │   │   ├──

我有一个非常类似的问题。我也在编写Python第四版。我正在使用mac powerbook。我的目录结构类似于:

programming\ python
├── PP4E
│   ├── GUI
│   │   ├── Tour
│   │   │   ├── __init__.py
│   │   │   ├── demoAll-prg.py
│   │   │   ├── demoAll-win.py
│   │   │   ├── demoCheck.py
│   │   │   ├── demoDlg.py
│   │   │   ├── demoRadio.py
│   │   │   ├── demoScale.py
│   │   ├── __init__.py
│   ├── __init__.py
│   └── launchmodes.py
└── __init__.py
demoAll-prg.py尝试从PP4E.launchmodes导入PortableLauncher
,但返回
ImportError:没有名为“PP4E”的模块

关于这个问题的答案通常是确保文件夹中存在_init__.py文件(完成!),和/或将父目录(这里是“编程python”)添加到PYTHONPATH。这也符合《学习Python》第五版第页的要求。709

我尝试了几种不同的方法来编辑我的python路径,如上文所述,但都无济于事。目前,我的.bash_配置文件末尾添加了以下内容:

PYTHONPATH=“/Users/geoffreysametz/google drive/programming python”
export PYTHONPATH
但这并不能解决问题。我已经关闭并重新打开了终端,并重新启动了计算机


对于如何解决此问题的任何建议,我们将不胜感激

如果使用bash指定python路径,则任何空格前面都应该有
\

PYTHONPATH=“/Users/geoffreysametz/google\ drive/programming\ python”

这确实修复了$PYTHONPATH,但没有修复错误
echo$PYTHONPATH
返回
“/Users/geoffreysametz/google drive/programming python”
,但是
python demoAll prg.py
在“tour”目录中运行会返回
ImportError:在demoAll-prg.py中的任何import语句之前没有名为'PP4E'的模块,请尝试此操作。导入系统;打印(系统路径);看看这是否真的包括路径。这揭示了一个奇怪的错误。第一个路径是
'/Users/geoffreysametz/Google Drive/Programming Python/PP4E/GUI/Tour'
(大概是从这里启动的路径b/c程序),第二个路径是
'/Users/geoffreysametz/Google Drive/Programming Python/PP4E/GUI/Tour/“/Users/geoffreysametz/Google Drive/Programming Python”
,其中.bash_配置文件路径(用双引号填写)已混搭到上一个路径的副本上。在您的原始描述中,所有路径名都是小写。但在print语句中,有些是大写。抱歉,我应该补充一点,我更改了.bash_配置文件中使用的大小写,以匹配初始发布后的真实文件名,因为区分大小写可能会有问题。路径e是实际电流输出的直接剪切和粘贴。