AttributeError: ‘int‘ object has no attribute ‘items‘

本文介绍了一个使用Python操作Redis中有序集合时遇到的错误,并详细解释了如何修复该错误,包括正确的参数传递方式及如何确保值和权重正确关联。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 从命令行输入zadd week_charm:2022-4:542:zset a x可正常插入数据,于是准备用python批量插入数据,没想到直接报错了
for id in ids.readlines():
    x = random.randint(1, 15) # 对应score
    a = 1000000000000 - int(id.strip())  # 对应value 
	r.zadd('week_charm:2022-4:542:zset', a, x)
Traceback (most recent call last):
  File "D:\test\week_star.py", line 17, in <module>
    r.zadd('week_charm:2022-4:542:zset', a, x)
  File "D:\test\venv\lib\site-packages\redis\commands\core.py", line 2749, in zadd
    for pair in mapping.items():
AttributeError: 'int' object has no attribute 'items'

报错原因: int类型没有items属性
查看源码,发现需要传入2个参数,那么为有序集合的key,mapping要传入对应的值和比重,2个值不能分开传,只能用字典形式传入
在这里插入图片描述
于是改成r.zadd('week_charm:2022-4:542:zset', {x: a})运行成功,通过 ZREVRANGE week_charm:2022-4:542:zset 0 -1 WITHSCORES查看 值弄反了, 再次查看源码 发现 获取到对应的值后会先存到一个列表里,而且前后顺序进行了调整,所以需要将对应的参数进行跳转
在这里插入图片描述
redis命令: ZADD KEY_NAME SCORE1 VALUE1.. SCOREN VALUEN
最终版:r.zadd('week_charm:2022-4:542:zset', {a: x})
查看效果 运行成功,完美展示~

  • 删除单一value或者score zrem week_charm:2022-4:542:zset 11
  • 删除整个key : del week_charm:2022-4:542:zset
AttributeError: 'int' object has no attribute 'items'是Python中的一个属性错误。这个错误通常发生在你尝试将一个整数(int)对象作为一个字典(dict)来使用,但整数对象没有items()方法来返回键值对。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [AttributeError:intobject has no attributeitems‘_Python中使用items()方法遍历字典的例子](https://blog.csdn.net/weixin_45928096/article/details/122358272)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [AttributeError:intobject has no attributeitems](https://blog.csdn.net/May_JL/article/details/122746730)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [python报错: list object has no attribute shape的解决](https://download.csdn.net/download/weixin_38748721/13708867)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值