繁体   English   中英

Python-如何使用Kwargs从类创建对象或调用方法

[英]Python - how to create object or call method from class with kwargs

我有以下带有kwargs init的父类:

class A(object):
    """ Parent class """
    def __init__(self, **kwargs):     

        # connect parameters
        self.host           = kwargs.get('host', 'localhost')
        self.user           = kwargs.get('user', None)
        self.password       = kwargs.get('password', None)

    def connect(self):
        try:           
            self.ConnectWithCred( self.host, 
                                  self.port, 
                                  self.user,
                                  self.password)
        except pythoncom.com_error as error:
            e = format_com_message("Failed to connect")
            raise Error(e)

我想创建一个“类A”的对象并调用“连接”方法。 我该怎么办? 我尝试了以下操作,但无法运行(仅供参考-我是Python新手):

sub_B = A(self.host = 'example.com', self.port = 22, self.user = 'root', 
          self.password = 'testing')
sub_B.connect()

您正在创建A的实例,而不是子类。 您的问题是您的实例化虽然正确,但却有些不正确。

从关键字参数中删除self

sub_B = A(host = 'example.com', port = 22, user = 'root', password = 'testing')

这应该工作正常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM