python - 在 OSX 中运行 Tensorflow

标签 python tensorflow importerror macos-mojave

我编写了简单的 MNIST tensorflow 代码...

当我使用 PyCharm 运行代码时,代码执行得非常好。
但实际上,我想使用 python ./mnist.py 命令在终端中运行此脚本,因此当我在终端中运行代码时,出现以下错误。

dyld: warning, LC_RPATH $ORIGIN/../../_solib_darwin_x86_64/_U_S_Stensorflow_Spython_C_Upywrap_Utensorflow_Uinternal.so___Utensorflow in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so being ignored in restricted program because it is a relative path
Traceback (most recent call last):
  File "./model_load.py", line 10, in <module>
    import tensorflow as tf
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tensorflow/__init__.py", line 24, in <module>
    from tensorflow.python import *
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tensorflow/python/__init__.py", line 52, in <module>
    from tensorflow.core.framework.graph_pb2 import *
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tensorflow/core/framework/graph_pb2.py", line 6, in <module>
    from google.protobuf import descriptor as _descriptor
ImportError: No module named google.protobuf

人们说这与 OSX 有关。有关于 LC_RPATH 的警告。
现在我想知道错误是否是由于 ImportErrorLC_RPATH 警告

如果ImportError和警告是一个单独的问题。

如何解决这个问题?
我使用的是 osx Mojavepyhton2.7tensorflow 1.5.0

最佳答案

我解决了我的问题。错误和警告是独立的。
无论是否出现警告,Mac OS 都可以在终端中运行 TensorFlow。
主要问题是 python 无法识别 google.protobuf 模块,即使它已安装......

  • 首先检查 protobuf 模块和 google 模块是否已安装。
    pip install googlepip install protobuf

  • 如果输入两个命令后出现相同的错误,则意味着模块已安装,但 python 找不到它。所以我们需要修改模块,让python能够识别它。

移动到Python包的安装目录。
就我而言 /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages

在此目录中找到 google 目录并检查里面有哪些文件。
就我而言,仅存在 protobuf
这就是Python找不到google.protobuf模块的原因。 我们需要添加__init__.py文件,以便python可以在目录中找到模块。
因此,我在 google 文件夹中添加空的 __init__.py 文件,就可以解决问题。
希望和我一样遇到问题的人可以用上面的方法解决。

关于python - 在 OSX 中运行 Tensorflow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54285619/

相关文章:

python - 在 Windows 中手动将包添加到 PyCharm

python - 打开电子表格返回 InMemoryUploadedFile

python - 按升序排列 Django 查询集,但末尾为 0 值项

python - cxfreeze 找不到 libpyside-python

string - tensorflow,如何将 tf.string SparseTensor 连接到一维密集张量

python - 无法在通过 Homebrew 安装 Python 2.7.3 的 OSX Lion 上导入 wxPython

tensorflow - 以可提供的格式转换 TensorFlow 模型

python - tensorflow 总是向我显示这些行

python - 导入错误:使用 Mingus 库时没有名为 'mt_exceptions' 的模块

python - 在 Mac 上的 Python 中使用 lxml 时收到 'ImportError: cannot import name etree'