python模拟QQ聊天--socket通信

本博客介绍使用Python的UDP协议和多线程进行socket网络编程,以实现即时的聊天功能。通过创建exe可执行程序进行通信验证,详细阐述了打包过程,并展示了运行效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用udp协议,多线程socket网络编程实现

      本篇博客针对有一点socket编程基础的同学,采用的udp协议,为了实现收发信息的实时性,采用了多线程的方式,话不多说,直接上代码(我把该文件名命名为 qq.py):

from socket import *
from threading import Thread

# 创建socket套接字
udp = socket(family=AF_INET, type=SOCK_DGRAM)
# 发送数据函数
def sentData(addr, desport):
    while True:
        data = input()
        udp.sendto(data.encode('utf8'),( addr, desport))
# 接收数据函数,绑定本地端口
def recvData(port):
    udp.bind(('', port))
    while True:
        data = udp.recvfrom( 1024 )
        print("\r>> " + data[0].decode('utf8') )

if __name__ == "__main__":
    addr = input("请输入对端通信地址:")
    desport = int(input("请输入对端通信端口:"))
    port = int(input("请输入本地绑定端口:"))
    t1 = Thread(target=sentData,args=(addr,desport) )
    t2 = Thread(target=recvData,args=(port,) )
    t1.start()
    t2.start()

使用 cx_Freeze 创建一个exe可执行程序来验证是否可以通信

      具体打包步骤可在以前的博客中

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值