Python3 socket 双端通信
来源:互联网 发布:mac 删除文件夹 编辑:程序博客网 时间:2024/05/18 03:37
很简单的代码 客服端和服务器都开两个线程 一个负责收一个负责发
服务器
import socket,time,threadingdef tcprecv(sock, addr): print('接受一个新连接来自 %s:%s...' % addr) while True: data = sock.recv(1024) time.sleep(1) if not data or data.decode('utf-8') == 'exit': break print('受到来自客户端的消息'+data.decode('utf-8')) # sock.send(('Hello, %s!' % data.decode('utf-8')).encode('utf-8')) sock.close() print('来自 %s:%s 的连接已关闭' % addr)def tcpsend(sock, addr): while True: datax = input('发送给客户端的消息:') sock.send(datax.encode('utf-8')) #创建一个基于IPv4和TCP协议的Sockets = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 监听端口:s.bind(('127.0.0.1', 12345))#调用listen()方法开始监听端口s.listen(5)print('等待连接...')while True: # 接受一个新连接: sock, addr = s.accept() # 创建新线程来处理TCP连接: t1 = threading.Thread(target=tcprecv, args=(sock, addr)) t2 = threading.Thread(target=tcpsend, args=(sock, addr)) t1.start() t2.start()
客户端
import socket,time ,threadings = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 建立连接:s.connect(('127.0.0.1', 12345))# 接收欢迎消息: # 发送数据: # s.send(data) #print(s.recv(1024).decode('utf-8'))def tcpsend():while 1:x = input('发送给服务器的内容')s.send(x.encode('utf-8'))time.sleep(5)def tcprecv():while 1:data = s.recv(1024)print('受到来自服务器的消息'+data.decode('utf-8'))while 1:# x = input('发送给服务器的内容')# s.send(x.encode('utf-8'))# recv = s.recv(1024)# print(recv.decode('utf-8'))t1 = threading.Thread(target = tcpsend)t2 = threading.Thread(target = tcprecv)t1.start()t2.start()
阅读全文
0 0
- Python3 socket 双端通信
- [python3] pyton socket 同步通信举例
- win下python3与C++进行socket通信
- Python3 socket
- Python3 socket
- (java)Socket短连接双端通信
- socket通信实例server端
- socket通信实例client端
- Socket通信
- Socket通信
- socket通信
- Socket通信
- Socket通信
- socket通信
- socket通信
- socket通信
- socket 通信
- socket通信
- mysql select UPPER(REPLACE(uuid(),'-','')) from xxxtable 得到相同的uuid的问题
- sqlserver 多行合并
- FAFU OJ 简单吗?
- 如何修改已编译的dll文件
- select,IOCP模型实践 -- KC直播
- Python3 socket 双端通信
- Linux环境下部署TestLink指导手册--3
- ubuntu14.04安装matlab2017a
- bzoj1744 [Usaco2005 oct]Skiing 奶牛滑雪
- mybatis中 insert into select 批量生成uuid时 用replace去掉"-"
- 队列——链式存储结构及其基本运算
- 网络导购平台层出不穷,超级淘与众不同
- 【Linux】关于死锁(基本概念,产生的场景,产生的条件,避免死锁的算法及原理)
- 从输入url到获取页面的完整过程