gpt4 book ai didi

python - CQLSH 导入错误 : cannot import name ensure_str

转载 作者:行者123 更新时间:2023-12-04 19:31:06 25 4
gpt4 key购买 nike

我已经安装了Cassandra我的 CentOs 系统上的数据库。之后,我尝试使用此命令安装 Cqlsh 包 sudo yum install cqlsh并且已经安装成功。但是当我尝试运行 cqlsh从终端,出现以下错误:

ImportError: cannot import name ensure_str


在代码的某处,它尝试加载一个名为 six 的库。包含 ensure_str .该错误并不是说它找不到名为 six 的模块,python解释器能找到库但不能导入!
我试过谷歌搜索,但没有一个解决方案对我有用。

最佳答案

经过几个小时的谷歌搜索和代码的挣扎,我终于找到了解决方案。我将与其他人分享。
显然,问题出在 six 的新版本上。 (v=1.7.3) 这与我的系统不兼容。然而,Cassandra 复制了 six 的最新版本。进入以下路径:

/usr/share/cassandra/lib/six-1.7.3-py2.py3-none-any.zip


然后 cqlsh尝试通过在代码中添加以下行来强制 python 解释器从该路径导入库。
third_parties = ('futures-', 'six-', 'geomet-')

for lib in third_parties:
lib_zip = find_zip(lib)
if lib_zip:
sys.path.insert(0, lib_zip)
无论您是否有其他版本的 six安装在您的系统上,它总是尝试从 Cassandra 文件夹导入库。
所以,我刚刚从 cqlsh 中删除了这些行。使用此命令的文件:
vim /usr/bin/cqlsh
然后我尝试在 six 上安装最后一个兼容版本使用这个命令:
yum install six
而已!问题解决了,现在我正在使用 cqlsh没有任何问题。
我希望它可以帮助其他人。

关于python - CQLSH 导入错误 : cannot import name ensure_str,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68692044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com