我正面临一个非常意外的错误,我想知道以前是否有人遇到过该错误。
我正在使用的设置如下:具有Python 3.7的macOS 10.14.6 我也在使用ipython和spyder,但它与我的问题无关,因为它也发生在普通的python shell中。
我有一个称为FLAP的模块和几个子模块,这些子模块都依赖于主FLAP模块。它们在一个名为git-repos的目录中。我在spyder的PYTHONPATH中添加了git-repos(或者在python shell中添加了sys.path)。 如果仅打开spyder的ipython shell或仅打开python shell,则可以导入自己的模块。
我一打开git-repos文件夹,例如指挥官一号,python无法导入模块。我还尝试使用Sourcetree git客户端,它引发了同样的事情。如果我退出Commander One应用程序中的文件夹,则可以在重新启动python shell之后再次将其导入。
此外,我感到奇怪的是,macOS的Finder不会发生这种情况,matplotlib或numpy等已安装的软件包也不会发生这种情况。
我认为值得一提的是,整个目录都位于挂载在/ Volumes中的Google Drive Filestream中。
你们以前见过这种问题吗?
答案 0 :(得分:1)
事实证明,您无法在macOS中执行以下操作:
您可以执行3.或4.,但不能执行3. AND 4.如果条件一不成立,则无论如何都可以导入模块。
这是macOS Google云端硬盘软件中的错误。在另一个应用程序(不是Finder)中打开该文件夹时,该文件夹似乎已被锁定,因此python shell无法找到它。
最后,我将文件夹从Google云端硬盘移动到了硬盘上,无论如何都可以导入它。我启动了一个crontab记录,因此它将定期将我的代码备份到驱动器中。
我花了三天的时间试图找到错误的根源。我认为这可以帮助面临此特定问题的其他人。