我有一个类定义,比如
class companyInCountry:
def __init__(self,name,country):
self.name = name
self.country = country
self.amountOwed = defaultdict(int)
我在一张有6行的桌子上循环
COMPANY COUNTRY GROSS NET
companyA UK 50 40
companyA DE 20 15
companyA UK 10 5
companyA FR 20 10
companyB DE 35 25
companyB DE 10 5
在这个表的循环结束时,我希望得到许多公司/地区特定的对象,例如
object1.name = companyA
object1.territory = UK
object1.amountOwed['GROSS'] = 60
object1.amountOwed['NET'] = 45
但我正在努力可视化的是防止创建具有重复公司/国家组合的对象的最佳方法(例如,在我的数据第3行中首次出现这种情况)。在init def中是否有一些数据类型或声明可以忽略重复项?或者,在调用companyCountry(name,country)初始化新实例之前,是否需要手动检查是否存在类似的对象
最简单的方法是维护一组
(company, country)
元组,在创建新对象之前可以查阅这些元组。如果该对已经存在,请跳过它,否则创建对象并将新对添加到集合中。差不多如果您想要一个更面向对象的解决方案,请将公司的创建委托给一个集合类,该集合类在创建之前执行必要的检查
相关问题 更多 >
编程相关推荐