首页 > 编程技术 > python

修复python-memcached在python3.8环境中报SyntaxWarning的问题(完美解决)

发布时间:2022-8-11 13:47 作者:knktc

我们一直使用python-memcached库来操作memcached,最近发现在python3.8的环境中,代码会报类似这样的警告:

memcache.py:1303: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if key is '':
memcache.py:1304: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if key_extra_len is 0:

查了下python-memcached的源码(其实也就一个文件),定位到1303和1304行,代码如下:

if key is '':
    if key_extra_len is 0:

看来这样的使用方法在python3.8里面是不被接受的。

虽然只是warning,但日志中打印这些信息总归让人感觉很不爽,所以得想法修复下。

查到官方的github仓库,发现这个库已经有年头没有人管了,即使有人提出了修改的PR( https://github.com/linsomniac/python-memcached/issues/176 ),也没有人来合并。

于是两条路:

pip install python-memcached-py38fix

看来下一步必须得考虑换成pymemcache了,毕竟Django都抛弃了对python-memcached的支持了。

到此这篇关于修复python-memcached在python3.8环境中报SyntaxWarning的问题的文章就介绍到这了,更多相关python3.8报SyntaxWarning内容请搜索猪先飞以前的文章或继续浏览下面的相关文章希望大家以后多多支持猪先飞!

原文出处:https://knktc.com/2022/08/10/fix-python-memcached-3-8-syntax

标签:[!--infotagslink--]

您可能感兴趣的文章: