以下是一个示例解决方案,其中包含一个类,用于将数据正确提取到一个包含字符串、整数和双精度属性的类的列表中:
class DataItem:
def __init__(self, string_prop, int_prop, double_prop):
self.string_prop = string_prop
self.int_prop = int_prop
self.double_prop = double_prop
data_list = []
# 假设data是一个包含原始数据的列表,每个元素都是一个字典
data = [
{'string_prop': 'abc', 'int_prop': 123, 'double_prop': 1.23},
{'string_prop': 'def', 'int_prop': 456, 'double_prop': 4.56},
{'string_prop': 'ghi', 'int_prop': 789, 'double_prop': 7.89},
]
for item in data:
# 从字典中提取属性值
string_prop = item.get('string_prop', '')
int_prop = item.get('int_prop', 0)
double_prop = item.get('double_prop', 0.0)
# 创建DataItem对象并将其添加到data_list中
data_list.append(DataItem(string_prop, int_prop, double_prop))
# 打印data_list中的所有元素
for item in data_list:
print(item.string_prop, item.int_prop, item.double_prop)
上述代码创建了一个名为DataItem
的类,用于表示包含字符串、整数和双精度属性的数据项。然后,通过遍历原始数据列表,并使用get()
方法从字典中提取属性值,将每个数据项的属性值传递给DataItem
类的构造函数来创建DataItem
对象。最后,将每个DataItem
对象添加到data_list
中。
最后一步是遍历data_list
并打印每个数据项的属性值。