0

我想知道如何在不丢失分配的第一个值的情况下为变量分配多个值。我有以下示例,其中为某个销售产品(在一列中)分配了一个包名称值(在另一列中):

销售产品=包装名称

ABC = 包 1

ABC = 包 2

如您所见,销售产品“ABC”有两个不同的包装名称值,“Package1”和“Package2”。

我正在使用 OWLready2 将对象属性分配给本体,为了动态地执行此操作,我使用了这样的 for 循环:

            for i in input_list[1:]:
                onto[i[0]].has_package = onto[i[1]]

有了这个我可以拥有: ABC.has_package = Package1

问题是当我转到下一行时,同一产品 ABC 有一个新的包名称值。因此,最后我的本体只考虑最后一个值:ABC.has_package = Package2

我的问题是,“for 循环”中是否有办法保留我的产品“ABC”的所有可能值。最后,我想同时分配和保存 Package1 和 Package2。

4

1 回答 1

0

赋值通常会覆盖旧值。形成我理解你可能想要使用onto[i[0]].has_package.append(onto[i[1]])的 .

于 2020-10-19T06:01:45.277 回答