Python的tcp传输: server和client基础代码解析
2020-01-14 11:11
267 查看
周六,细细的品一段代码,嗯,比品美酒爽,哈哈
tcp客户端基础代码:
""" socket() > connect > send/recv """ from socket import * sockfd = socket(AF_INET, SOCK_STREAM) # 默认值其实就是这个, tcp套接字 try: sockfd.connect(('127.0.0.1', 8888)) print('连接上了服务器') # 连接上,就显示一下, 告知操作人员 except Exception as e: print('连接失败',e) # 处理一下连接失败 while True: msg = input("msg>>") if not msg: # 输入为空就退出 print('客户端退出') sockfd.close() # 退出后随即关闭套接字 break sockfd.send(msg.encode()) # 其实相当于if的else data = sockfd.recv(128) print(data.decode()) # 打印服务器发回来的消息
tcp服务端代码:
""" socket() > bind > listen > accept() > recv/send """ from socket import * sockfd = socket(AF_INET, SOCK_STREAM) sockfd.bind(('0.0.0.0', 8888)) sockfd.listen(3) while True: print('等待接收中...') # 不会发生异常的语句就不要放在try里了 try: connfd, addr = sockfd.accept() print('客户端已连接:', addr) # 连接到客户端,就打印消息,告诉一下操作人员 except KeyboardInterrupt: print('服务器退出') break # 每次捕获异常, 都要做相应的处理, 不然后续代码会出问题 except Exception as e: print(e) continue # 每次捕获异常, 都要做相应的处理, 不然后续代码会出问题 while True: data = connfd.recv(1024) # 循环接收数据 if not data: # 客户端退出后,系统会自动发送空字符过来,可以据此判断客户端状态 print('此客户端已退出, 正在等待连接下一个客户端...\n') connfd.close() # 关闭对应这个客户的套接字 break # 退出这个客户的"循环接收发送" print('客户端发来:', data.decode()) # 客户端发来的消息不为空时的处理 connfd.send(b"OK") # 会发客户端消息 sockfd.close()
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- python 网络编程代码TCP Server client
- Linux网络编程--TCP网络编程基础(简单的server/client模型)
- python基础-socketserver(tcp\udp)、selectors模块
- 使用Python编写一个最基础的代码解释器的要点解析
- Python 下的 tcp server/client 通信
- ESP8266例程解析⑥TCP server and client
- TCP建立连接结束过程,client与server数据传输
- python client使用http post 到server端的代码
- 用python实现的简单Server/Client文件传输
- 基于C++的纯面向对象的通用高性能大并发TCP-SERVER/CLIENT开发框架实践系列之基础篇
- 网络编程之使用DNS来解析Name的TCP Server和Client(二)
- python实现的udp协议Server和Client代码实例
- python实现的udp协议Server和Client代码实例
- java基础学习笔记——网络TCP/Client&Server
- 一起看代码来玩玩QT之13 IO(two TCPServer TcpClient TcpScoket)
- TCPServer与Client的通信代码
- novaclient代码解析之---通过nova show <server-id>命令解析Nova client与Nova API之间的调用关系
- Python Socket实现简单TCP Server/client功能示例
- Python TCP Server And Client
- 使用Python编写一个最基础的代码解释器的要点解析