Python udp聊天室还未使用线程时,一些有意思的理解

 还未使用线程时,一些有意思的理解

from socket import *
import threading

udp_socket = socket(AF_INET, SOCK_DGRAM)
bind_addr = ('', 8899)
udp_socket.bind(bind_addr)


def send_data(addr):
    data = input('')  # 只要终端上有数据就会被识别到里面,即虽然程序会在下方while True堵塞,当有输入时,data会
    # 依次取终端界面的值
    udp_socket.sendto(data.encode('gbk'), addr)


def receive_data():
    while True:
        content, addr = udp_socket.recvfrom(1024)
        print('start')
        print('收到的数据是%s,来自于%s' % (content.decode('gbk'), addr[0]))
        send_data(addr)  # 当调试助手被堵塞在这里调试助手传入的数据相当于进入了socket队列,
        # 当input输入有一个值则会输出一次传入的数据


receive_data()

udp_socket.close()

 

你可能感兴趣的:(python,每日总结)