Py学习  »  Python

python对象作为类讲师的可选参数

Rutger Mauritz • 4 年前 • 205 次点击  

在创建类的新实例(比如a)时,我希望另一个类的实例(比如b)是构造函数的可选参数。如果B是作为参数给定的,那么我希望A的构造函数指定B属于A。如果不是作为参数给定的,我希望我的构造函数创建一个与B所属的类相同的新实例(比如C),并指定这个新实例属于A。

更具体地说,我正在为一家医院制定到达流程。到达是根据随机过程发生的。我希望可以指定 arrival 事件与已存在的 customer (在这种情况下,我应该把它作为一个论点)或者它将是一个新的 顾客 ,在这种情况下,我的 到达 构造函数应创建的新实例 customer.

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/34300
 
205 次点击  
文章 [ 2 ]  |  最新文章 4 年前
user8426627
Reply   •   1 楼
user8426627    4 年前

到达是根据随机过程发生的。我希望可以指定到达事件是与已经存在的客户有关(在本例中,我应该将其作为参数给出)还是将成为新客户,在这种情况下,我的到达构造函数应该创建一个新的客户实例。

这只是dict和setdefault的用法:

customers = {}

for co in all_customers:

known_customer = customers.setdefault(hash(co), customer(co))

或者,如果您想让它作为构造函数:

class arrival:

known_cos = {}# quasi static

def __init__(self, co)

  self.customer = known_cos.setdefault(hash(co) , customer(co))
DSC
Reply   •   2 楼
DSC    4 年前
class A:
    def __init__(self, b=None):
        if b is None:
            self.b = B()
        else:
            self.b = b