python实现的多任务版udp聊天器功能案例
本文实例讲述了python实现的多任务版udp聊天器。分享给大家供大家参考,具体如下:
说明
编写一个有2个线程的程序
线程1用来接收数据然后显示
线程2用来检测键盘数据然后通过udp发送数据
要求
实现上述要求
总结多任务程序的特点
参考代码:
importsocket importthreading defsend_msg(udp_socket): """获取键盘数据,并将其发送给对方""" whileTrue: #1.从键盘输入数据 msg=input("\n请输入要发送的数据:") #2.输入对方的ip地址 dest_ip=input("\n请输入对方的ip地址:") #3.输入对方的port dest_port=int(input("\n请输入对方的port:")) #4.发送数据 udp_socket.sendto(msg.encode("utf-8"),(dest_ip,dest_port)) defrecv_msg(udp_socket): """接收数据并显示""" whileTrue: #1.接收数据 recv_msg=udp_socket.recvfrom(1024) #2.解码 recv_ip=recv_msg[1] recv_msg=recv_msg[0].decode("utf-8") #3.显示接收到的数据 print(">>>%s:%s"%(str(recv_ip),recv_msg)) defmain(): #1.创建套接字 udp_socket=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) #2.绑定本地信息 udp_socket.bind(("",7890)) #3.创建一个子线程用来接收数据 t=threading.Thread(target=recv_msg,args=(udp_socket,)) t.start() #4.让主线程用来检测键盘数据并且发送 send_msg(udp_socket) if__name__=="__main__": main()
更多关于Python相关内容可查看本站专题:《PythonSocket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。