勘误

第1次印刷(2024年12月)

第4页

最后一行的克隆命令:

git clone git@github.com:huangzworks/redis-usage-collection.git

应改为:

git clone git@github.com:huangzworks/rediscookbook.git

这里的redis-usage-collection是我原本为书本源码设置的名字,后面觉得太长了,就修改为跟本书英文名相同的rediscookbook,但这个修改最后由于失误没能反映到最终的印刷版本中。

为了热修复这个问题,我已在GitHub上为上述两个名字都创建了一模一样的源码库,无论你使用哪条命令(哪个名字),都能够正确获取代码。

44页

本页的第3段代码中的:

>>> for i in range(3):
...
   limiter.is_permitted("Peter")
...

应为:

>>> for i in range(3):
...   limiter.is_permitted("Peter")
...

本页最后一段代码中的:

>>> for i in range(3):
...
   limiter.is_permitted("Peter")
...

修复方式同上。

71页

代码清单13-2中的:

DEFAULT_COUNT = 10
NON_BLOCK = None
START_OF_STREAM = 0
def tuple_to_dict(tpl):

应为:

DEFAULT_COUNT = 10
NON_BLOCK = None
START_OF_STREAM = 0

def tuple_to_dict(tpl):

(第3行代码之后有一个空行)。

88页

15.3节最后一句的最后一小句:

或者基于标签“Database”和“NoSQL”找出同时带有这两个标签的数据库MySQL

中的“NoSQL”应为“SQL”。

以下是正确的句子:

或者基于标签“Database”和“SQL”找出同时带有这两个标签的数据库MySQL

164页

第2段代码中的:

>>> for i in range(8):  # 推入7~0这八个元素
...
   stack.push(i)
...

应为:

>>> for i in range(8):  # 推入7~0这八个元素
...   stack.push(i)
...

173页

最后一段代码中的:

>>> for i in range(6):  # 遍历队列
...
   queue.rotate()
...

应为:

>>> for i in range(6):  # 遍历队列
...   queue.rotate()
...

175页

最后一段代码中的:

>>> for i in range(3):  # 遍历队列
...
   queue.rotate()
...

应为:

>>> for i in range(3):  # 遍历队列
...   queue.rotate()
...