zoukankan      html  css  js  c++  java
  • Python9-网络编程2-day31

    基于UDP协议的socket

    #server
    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)
    sk.bind(('127.0.0.1',8080))
    msg,addr = sk.recvfrom(1024)
    print(msg.decode('utf-8'))
    sk.sendto(b'bye',addr)
    sk.close()
    
    #client
    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)
    ip_port = ('127.0.0.1',8080)
    sk.sendto(b'hellog',ip_port)
    ret,addr = sk.recvfrom(1024)
    print(ret.decode('utf-8'))
    # udp的server 不需要进行监听也不需要建立连接
    # 在启动服务之后只能被动的等待客户端发送消息过来
    # 客户端发送消息的同时会自带地址信息
    # 消息回复的时候,不需要发送信息,还需要把对方的地址发送过去
    QQ的UPD聊天代码
    #server
    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)
    sk.bind(('127.0.0.1',8080))
    while True:
        msg,addr = sk.recvfrom(1024)
        print(addr)
        print(msg.decode('utf-8'))
        info = input('>>>>>>>').encode('utf-8')
        sk.sendto(info,addr)
    
    sk.close()
    
    #tim
    
    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)
    ip_port = ('127.0.0.1',8080)
    while True:
        info = input('Tim: ')
        info = ('33[32m来自Tim的消息:%s33[0m'%info).encode('utf-8')
        sk.sendto(info,ip_port)
        msg,addr = sk.recvfrom(1024)
        print(msg.decode('utf-8'))
    sk.close()
    
    #tigger
    import socket
    sk = socket.socket(type=socket.SOCK_DGRAM)
    ip_port = ('127.0.0.1',8080)
    while True:
        info = input('Tigger: ')
        info = ('33[34m来自Tigger的消息:%s33[0m'%info).encode('utf-8')
        sk.sendto(info,ip_port)
        msg,addr = sk.recvfrom(1024)
        print(msg.decode('utf-8'))
    sk.close()

    黏包问题

    import subprocess
    ret = subprocess.Popen('dir',shell=True,stdout=subprocess.PIPE,stderr=subprocess.PIPE)
    print('stdout: ',ret.stdout.read().decode('gbk'))
    print('stderr: ',ret.stderr.read().decode('gbk'))


  • 相关阅读:
    poj 3111 卖珠宝问题 最大化平均值
    如何在b站上传高码率视频
    AC自动机总结
    NOIP2018 旅行
    NOI2008 假面舞会 DFS
    鸽子的记录
    Unity学习笔记
    LuoguP1196 [NOI2002]银河英雄传说 并查集
    Luogu1801 黑匣子 堆
    Luogu P1321 单词覆盖还原 字符串
  • 原文地址:https://www.cnblogs.com/zhangtengccie/p/10360256.html
Copyright © 2011-2022 走看看