ImportError:无法导入名称“ PY2”

时间:2020-01-30 09:12:34

标签: python python-3.x sqlalchemy

想使用SQLalchemy连接雪花。为雪花创建引擎时出现以下错误:

79

引擎创建代码是这样的:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\engine\__init__.py", line 479, in create_engine
    return strategy.create(*args, **kwargs)
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\engine\strategies.py", line 61, in create
    entrypoint = u._get_entrypoint()
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\engine\url.py", line 172, in _get_entrypoint
    cls = registry.load(name)
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\sqlalchemy\util\langhelpers.py", line 222, in load
    return self.impls[name]()
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pkg_resources\__init__.py", line 2443, in load
    return self.resolve()
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\pkg_resources\__init__.py", line 2449, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\snowflake\sqlalchemy\__init__.py", line 12, in <module>
    from .util import _url as URL
  File "C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\snowflake\sqlalchemy\util.py", line 9, in <module>
    from snowflake.connector.compat import (PY2, IS_STR)
ImportError: cannot import name 'PY2' from 'snowflake.connector.compat' (C:\Users\mithi\AppData\Local\Programs\Python\Python38-32\lib\site-packages\snowflake\connector\compat.py)

2 个答案:

答案 0 :(得分:2)

这似乎与snowflake-connector-python版本2.2.0的发行有关。将其设置为<2.2.0可以为我修复。

答案 1 :(得分:2)

我在tested requirements page匹配了所有依赖项。 pip install --upgrade snowflake-sqlalchemy已为我解决了问题。我正在运行Python 3.7.6版本为2.2.1的{​​{1}}