繁体   English   中英

在 datalab 中导入 gcsfs 时出错

[英]Importing gcsfs in datalab is giving an error

当我在数据实验室中导入 gcsfs 时,

import gcsfs

我遇到了与 package fsspec 相关的无效语法错误。 跟版本有关系吗


  File "/usr/local/envs/py3env/lib/python3.5/site-packages/IPython/core/interactiveshell.py", line 2961, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)

  File "<ipython-input-3-3f25f74e3f1b>", line 1, in <module>
    import gcsfs

  File "/usr/local/envs/py3env/lib/python3.5/site-packages/gcsfs/__init__.py", line 5, in <module>
    from .core import GCSFileSystem

  File "/usr/local/envs/py3env/lib/python3.5/site-packages/gcsfs/core.py", line 7, in <module>
    import fsspec

  File "/usr/local/envs/py3env/lib/python3.5/site-packages/fsspec/__init__.py", line 10, in <module>
    from .mapping import FSMap, get_mapper

  File "/usr/local/envs/py3env/lib/python3.5/site-packages/fsspec/mapping.py", line 2, in <module>
    from .core import url_to_fs

  File "/usr/local/envs/py3env/lib/python3.5/site-packages/fsspec/core.py", line 314
    out[0] = (f"{out[0][1]}://", out[0][1], out[0][2])
                              ^
SyntaxError: invalid syntax


为了扩展 Claros 的答案,潜在的问题是 gcsfs 继承自的 fsspec package。 fsspec 最近的 0.8.0 版本实现了 f-strings,这是导致错误的原因。 要修复它,只需安装仍然支持 Python 3.5 的最新 fsspec 版本,即

!pip install fsspec==0.6.2

https://pypi.org/project/fsspec/0.6.2/

您可能还必须降级 gcsfs。 我得到它的工作

!pip install  --upgrade gcsfs==0.5.3

您使用的是 Python 3.5,而 f-strings 是 Python 3.6 中实现的功能。 您要么找到与 Python 3.5 兼容的 package 版本,要么升级到 Python 3.6+。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM