如何从kwargs中获取值列表?已能获取键但无法获取值
从kwargs中获取值列表的方法
嘿,这事儿不难解决!在Python里,kwargs本质上就是个普通的字典对象,所以直接用字典的内置方法就能轻松提取值的列表:
方法一:直接获取所有值的列表
用字典的values()方法就能拿到所有值的视图对象,要是需要转换成标准列表,套个list()就行:
# 假设你的kwargs是示例里的结构 kwargs = {'description_9': u' HVAC Ductwork Upgrade ', 'state_9': u'NSW', 'hours_6': u'2', 'hours_5': u'1', ...} # 获取所有值的列表 values_list = list(kwargs.values()) print(values_list)
运行后你会得到类似这样的结果:[' HVAC Ductwork Upgrade ', 'NSW', '2', '1', ...]。
方法二:按需筛选特定值
要是你不需要所有值,只想提取某一类键对应的值(比如只拿带hours_前缀的),可以用列表推导式来筛选:
# 提取所有以hours_开头的键对应的值 target_values = [kwargs[key] for key in kwargs if key.startswith('hours_')] print(target_values) # 输出结果:['2', '1', '1', '1', '8', '5']
另外提一句,你之前能拿到键应该是用了kwargs.keys()吧?其实字典的items()方法还能同时遍历键和值,比如for key, value in kwargs.items():,这样就能同时处理键值对啦。
内容的提问来源于stack exchange,提问作者Ossama
相关产品推荐
相关产品推荐

