Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 假redis中没有名为“lupa”的模块_Python 3.x_Fakeredis - Fatal编程技术网

Python 3.x 假redis中没有名为“lupa”的模块

Python 3.x 假redis中没有名为“lupa”的模块,python-3.x,fakeredis,Python 3.x,Fakeredis,当我从lib使用lock.release时,我得到了以下异常: File "/usr/local/lib/python3.6/site-packages/redis/lock.py", line 111, in acquire if self.do_acquire(token): File "/usr/local/lib/python3.6/site-packages/redis/lock.py", line 258, in do_acquire client=s

当我从lib使用lock.release时,我得到了以下异常:

   File "/usr/local/lib/python3.6/site-packages/redis/lock.py", line 111, in acquire
     if self.do_acquire(token):
   File "/usr/local/lib/python3.6/site-packages/redis/lock.py", line 258, in do_acquire
     client=self.redis))
   File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 2950, in __call__
     return client.evalsha(self.sha, len(keys), *args)
   File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 2079, in evalsha
     return self.execute_command('EVALSHA', sha, numkeys, *keys_and_args)
   File "/usr/local/lib/python3.6/site-packages/redis/client.py", line 667, in execute_command
     connection.send_command(*args)
   File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 610, in send_command
     self.send_packed_command(self.pack_command(*args))
   File "/usr/local/lib/python3.6/site-packages/redis/connection.py", line 590, in send_packed_command
     self._sock.sendall(item)
   File "/usr/local/lib/python3.6/site-packages/fakeredis/_server.py", line 808, in sendall
     self._parser.send(data)
   File "/usr/local/lib/python3.6/site-packages/fakeredis/_server.py", line 725, in _parse_commands
     self._process_command(fields)
   File "/usr/local/lib/python3.6/site-packages/fakeredis/_server.py", line 827, in _process_command
     result = self._run_command(func, sig, fields[1:], False)
   File "/usr/local/lib/python3.6/site-packages/fakeredis/_server.py", line 741, in _run_command
     result = func(*args)
   File "/usr/local/lib/python3.6/site-packages/fakeredis/_server.py", line 2439, in evalsha
     return self.eval(script, numkeys, *keys_and_args)
   File "/usr/local/lib/python3.6/site-packages/fakeredis/_server.py", line 2386, in eval
     from lupa import LuaRuntime, LuaError, as_attrgetter
 No module named 'lupa'
到目前为止,我还没有发现类似的问题,所以我只想为那些未来将面临这一例外的人分享解决方案

如报告中所述

虽然fakeredis是纯Python,但如果您想运行Lua脚本,则需要lupa,这包括在Lua中实现的redis.lock.lock等功能。如果您使用pip install fakeredis[lua]安装fakeredis,它将自动安装

因此:

如报告中所述

虽然fakeredis是纯Python,但如果您想运行Lua脚本,则需要lupa,这包括在Lua中实现的redis.lock.lock等功能。如果您使用pip install fakeredis[lua]安装fakeredis,它将自动安装

因此:

pip install fakeredis[lua]