zoukankan      html  css  js  c++  java
  • 自定义类简化程序

    父类 

      此处以UDP协议举例,TCP协议做适当修改即可

    import socket
    
    
    class MySocket(socket.socket):# 继承自 socket文件中的socket类,此时socket就是父类
        def __init__(self,encoding='utf-8'):
            self.encoding = encoding
            super().__init__(type=socket.SOCK_DGRAM)#  执行父类socket中的__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
    

    服务器端

    from My_UDP import MySocket
    
    sk = MySocket('utf-8')
    
    sk.bind(('127.0.0.1',8090))
    
    while 1:
        msg_r, addr = sk.my_recvfrom(1024)  # 接收来自于哪里的消息
        print(msg_r,addr)
        msg_s = input(('>>>'))
        sk.my_sendto(msg_s, addr)  # 发给谁的消息
    
    
    
    sk.close()
    

    客户端

    from My_UDP import MySocket
    
    sk = MySocket('utf-8')
    
    
    while 1:
        name = input('请输入您的名字:')
        msg_s = input('>>>')
        info = name + ' : ' + msg_s
        sk.my_sendto(info,('127.0.0.1',8090))  # 发给谁的消息
    
        msg_r,addr = sk.my_recvfrom(1024)# 接收来自于哪里的消息
        print(msg_r)
    
    sk.close()
    

      

  • 相关阅读:
    Soap 教程
    MAC mysql install
    PHP date
    MAC 终端terminal颜色
    MAC 终端颜色设置
    MAC brew软件安装
    PHP iconv函数
    Java----前端验证之验证码额实现
    Java---Ajax在Struts2框架的应用实例
    Java基础—标识符及命名规范
  • 原文地址:https://www.cnblogs.com/luxiangyu111/p/9506266.html
Copyright © 2011-2022 走看看