5
우리가 볼 수 있듯이 send 메소드가 오버로드되지 않습니다.python socket.send을 오버로드 할 수 없습니다.
from socket import socket
class PolySocket(socket):
def __init__(self,*p):
print "PolySocket init"
socket.__init__(self,*p)
def sendall(self,*p):
print "PolySocket sendall"
return socket.sendall(self,*p)
def send(self,*p):
print "PolySocket send"
return socket.send(self,*p)
def connect(self,*p):
print "connecting..."
socket.connect(self,*p)
print "connected"
HOST="stackoverflow.com"
PORT=80
readbuffer=""
s=PolySocket()
s.connect((HOST, PORT))
s.send("a")
s.sendall("a")
출력 :
PolySocket init
connecting...
connected
PolySocket sendall
관련 : http://www.mail-archive.com/python- [email protected]/msg126934.html, http://groups.google.com/group/comp.lang.python/browse_thread/thread/391728cd442339c8/c0581b9ee5e7ceaf, http://groups.google.com/group/comp. lang.python/browse_thread/thread/76d27388b0d286fa/c9849013e37c995b – ChristopheD