TypeError:executor()不带参数(给定1个)

时间:2017-04-21 03:42:02

标签: python networking

我通过定义执行器函数在类客户机节点中的类NetworkUtility中继承了函数。 你能告诉我,为什么会出现上述错误。我对此一无所知。

#!/usr/bin/python
import socket
from NetworkUtility import NetworkUtility
#import json

HOST = ''    # get local machine name by socket.gethostname()

PORT = 50007              # The same port as used by the server,reserve a port for ur service reserve port



class ClientNode(object):      #if you don't want to inherit NetworkUtility


          def executor():

                 cn1 = NetworkUtility()
                 cn1.setupClientConnection(HOST, PORT)

                 cn1.sendMessage('Client 1: Hello')
                 print cn1.receiveMessage()
                 cn1.endConnection()

c = ClientNode()
c.executor()

1 个答案:

答案 0 :(得分:1)

如果executor()是您ClientNode课程的一种方法,则需要使用:

def executor(self):

运行c.executor时,c是作为方法的第一个参数传递的类的实例。 self以这种方式代表c

因此,您提供一个参数的事实是正确的,但执行程序当前不带参数的事实需要进行上述修正。