You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在字典列表中通过for循环将bytes转换为string?

解决字典列表中Bytes转String的赋值错误问题

问题原因

你遇到的"tuple无法进行对象赋值"错误,是因为dict.items()返回的是不可变的元组(tuple),元组的元素不能被修改,所以直接对y[1]赋值会触发错误。

解决方法

方法一:遍历字典的键

直接通过字典的键来访问并修改对应的值:

list1 = [
    {'id': b'1', 'ip': b'1.1.1.1'},
    {'id': b'2', 'ip': b'2.2.2.2'}
]

for x in list1:
    for key in x:
        x[key] = x[key].decode('utf8')
    print(x)

方法二:解包键值对遍历

将items()返回的元组解包为key和value变量,再通过键更新字典:

list1 = [
    {'id': b'1', 'ip': b'1.1.1.1'},
    {'id': b'2', 'ip': b'2.2.2.2'}
]

for x in list1:
    for key, value in x.items():
        x[key] = value.decode('utf8')
    print(x)

运行结果

两种方法执行后都会输出:

{'id': '1', 'ip': '1.1.1.1'}
{'id': '2', 'ip': '2.2.2.2'}

内容的提问来源于stack exchange,提问作者Saeed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 17:03:15