zoukankan      html  css  js  c++  java
  • UDP协议,字体改变颜色

    UDP协议必须由客户端首先发送内容

    UDP协议的聊天室服务器代码

    import socket
    
    sk = socket.socket(type=socket.SOCK_DGRAM)      #默认TCP协议,传参代表UDP
    sk.bind(("127.0.0.1",8888))       #127.0.0.1是一个回环地址,每一个电脑都有
    dic = {"段sir":"33[36m","傻子":"33[33m"}
    while 1:
        s,addr = sk.recvfrom(1024)
        s1 = s.decode().split(":")[0].strip()
        print("receive:"+"%s%s" % (dic[s1],s.decode())+"33[0m")
        ss = input("send:").encode()
        sk.sendto(ss,addr)
    conn.close()
    sk.close()
    

    UDP协议的客户端代码

    import socket
    
    sk = socket.socket(type=socket.SOCK_DGRAM)
    name = input("name:")
    while 1:
        s = input("send:")
        s = name+":"+ s
        sk.sendto(s.encode(), ("127.0.0.1", 8888))
    
        ss, addr = sk.recvfrom(1024)
        print("receive:" + ss.decode())
    sk.close
    

    字体改变颜色

    #格式:
      设置颜色开始 :33[显示方式;前景色;背景色m
    #说明:
    前景色            背景色           颜色
    ---------------------------------------
    30                40              黑色
    31                41              红色
    32                42              绿色
    33                43              黃色
    34                44              蓝色
    35                45              紫红色
    36                46              青蓝色
    37                47              白色
    显示方式           意义
    -------------------------
    0                终端默认设置
    1                高亮显示
    4                使用下划线
    5                闪烁
    7                反白显示
    8                不可见
     
    #例子:
    33[1;31;40m    <!--1-高亮显示 31-前景色红色  40-背景色黑色-->
    33[0m          <!--采用终端默认设置,即取消颜色设置-->
    

    自己写一个模块来取消代码中频繁的解码,编码

      举例:UDP协议

    服务器代码
    import My_UDP   #模块文件名为My_UDP


    sk = My_UDP.MySocket()

    sk.bind(('127.0.0.1',8080))

    msg,addr = sk.my_recvfrom(1024)


    print(msg)

    sk.close()


    客户端代码
    import My_UDP

    sk = My_UDP.MySocket()

    sk.my_sendto('abcabc中国',('127.0.0.1',8080))


    sk.close()



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

      

  • 相关阅读:
    【C#进阶系列】06 类型和成员基础
    纪中5日T1 1564. 旅游
    纪中17日T1 2321. 方程
    纪中17日T2 2322. capacitor
    纪中10日T1 2313. 动态仙人掌
    纪中14日听课小结 图论 最短路 二分图 差分约束
    一个抓猫的游戏 消遣GAME 持续更新中!
    洛谷P1464 Function  HDU P1579 Function Run Fun
    洛谷P1976 鸡蛋饼
    纪中12日T1 2307. 选择
  • 原文地址:https://www.cnblogs.com/duanpengpeng/p/9469171.html
Copyright © 2011-2022 走看看