#自定义类
import socket
class Mysocket(socket.socket): #继承自socket文件中的socket类
def __init__(self,encoding='utf-8'):
self.encoding='utf-8'
super(Mysocket, self).__init__(type=socket.SOCK_DGRAM) #执行父类socketz中的__init__方法
def my_sendto(self,msg,addr):
return self.sendto(msg.encode(self.encoding),addr) #调用父类中的sendto方法
def my_recvfrom(self,num):
msg_r,addr=self.recvfrom(num) #调用父类的recvfrom方法
return msg_r.decode(self.encoding),addr
#server层调用
from MyUdp import Mysocket
sk=Mysocket()
sk.bind(('10.70.2.143',8090))
print(sk.my_recvfrom(1024))
sk.close()
#client层调用
from MyUdp import Mysocket
sk=Mysocket()
sk.my_sendto('你好',('10.70.2.143',8090))
sk.close()