我有一个返回字典的函数。
该词典有一个键和一个值。该值是一个数组,之所以这样,是因为该值可以在其中具有多个条目,这是我用来获取数据的ldap lib。
此值以字节为单位,我需要将其转换为字符串,以便可以在路由中返回json。
我的问题是如何像使用str()
函数那样循环浏览该字典并将其值设置为字符串。
使用这段代码user_details = ldap.get_object_details(cn, query_filter="cn=%s")
,我得到了这句话:
{
"cn": [
b"Super Bat"
],
"description": [
b"Mutant"
],
"mail": [
b"bat@planetexpress.com"
],
"ou": [
b"Hero Crew"
],
"sn": [
b"bat"
],
"uid": [
b"bat"
]
}
我需要遍历user_details
并将值转换为str
。
有什么帮助吗?
谢谢
答案 0 :(得分:1)
通过items
循环查找将为您提供字典中所需的内容。在您的情况下,下面的代码片段应该可以工作。
for k,v in dict_name.items():
dict_name[k]=v[0].decode('utf-8')
输出
{'cn': 'Super Bat', 'description': 'Mutant', 'mail': 'bat@planetexpress.com', 'ou': 'Hero Crew', 'sn': 'bat', 'uid': 'bat'}
如果您需要维护列表结构,请在循环中使用isinstance
,然后使用map
或列表理解