如何从Achievement对象列表中提取value属性值并生成数字列表
提取Achievement对象中的value值到新列表
方法一:直接访问对象的value属性(优先尝试)
从你打印的对象格式来看,这些Achievement实例应该已经把value作为公开属性了,直接遍历列表提取即可,这是最简单高效的方式:
# 假设你的Achievement列表变量名为achievements value_list = [item.value for item in achievements]
如果要验证结果,直接打印新列表:
print(value_list)
方法二:从对象的字符串表示中提取(方法一失效时用)
如果对象没有提供可直接访问的value属性,那就从打印出的字符串内容里匹配数字。需要用到正则表达式:
import re value_list = [] for item in achievements: # 将对象转为字符串 obj_str = str(item) # 匹配value=后的数字部分 result = re.search(r'value=(\d+)', obj_str) if result: # 转成整数后加入列表 value = int(result.group(1)) value_list.append(value)
内容的提问来源于stack exchange,提问作者Manoj Poudel
相关产品推荐
相关产品推荐

