Python基于socket怎么实现TCP客户端和服务端
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要讲解了"Python基于socket怎么实现TCP客户端和服务端",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python基于socket
千家信息网最后更新 2025年11月07日Python基于socket怎么实现TCP客户端和服务端
这篇文章主要讲解了"Python基于socket怎么实现TCP客户端和服务端",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python基于socket怎么实现TCP客户端和服务端"吧!
一、基于socket实现的TCP客户端
import socket # 建立socket对象# 参数一表示IP地址类型(AF_INET为IPV4,AF_INET6为IPV6),参数二表示连接的类型(SOCK_STREAM表示TCP形式,SOCK_DGRAM表示UDP形式)client_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM) # 代表(ipv4,TCP) # 连接服务器(元组中填目标ip地址和端口号)client_socket.connect(('127.0.0.1',7777))# 准备数据,需要转换为二进制数据,encode()中填写的是本地的字符串编码格式,mac、linux填utf-8data='hello'.encode('gbk')# 向服务器发送数据client_socket.send(data)# 接收数据,必须要指定接收数据的大小,单位字节,最大4096,即4krecv_data=client_socket.recv(1024)# 接收的数据要进行decode()解码,发送的时候用啥编码就填啥编码recv_data=recv_data.decode('gbk')print(recv_data)# 关闭连接client_socket.close()二、基于socket实现的TCP服务端
import socket# 建立socket对象server_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)# 如果服务器是一次性的,如果服务器结束后马上重新启动会出现一个错误,原因是地址和端口没有被释放# OSError: [Errno 48] Address already in use# 如果想马上释放,要设置一下socket选项server_socket.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,True)# 绑定IP和端口,如果在绑定IP时没有给定IP,默认是绑定本地IPserver_socket.bind(('',7777))# 设置监听(最大监听数),设置完后服务端会进入被动模式,不能主动连接客户端,只能被动地等待客户端的连接server_socket.listen(128)# 等待客户端连接,连接上后,函数会返回客户端的Socket对象和地址信息client_socket,ip_port=server_socket.accept()print(f'客户端{ip_port[0]}使用端口{ip_port[1]}连接成功...')# 接收客户端数据data=client_socket.recv(1024)# 查看客户端发送的数据长度if len(data)!=0: data=data.decode('gbk') print(f'客户端{ip_port[0]}使用端口{ip_port[1]}发送是数据是{data}')else: print(f'客户端{ip_port[0]}使用端口{ip_port[1]}关闭了连接') # 给客户端发送数据data='你好'.encode('gbk')client_socket.send(data)# 关闭客户端client_socket.close()# 关闭服务端server_socket.close()感谢各位的阅读,以上就是"Python基于socket怎么实现TCP客户端和服务端"的内容了,经过本文的学习后,相信大家对Python基于socket怎么实现TCP客户端和服务端这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
客户
客户端
服务
数据
端口
地址
服务器
对象
编码
学习
最大
内容
参数
形式
端的
类型
马上
监听
主动
成功
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
什么是4G无线通信网络技术
攻城掠地服务器号是什么意思
银行招那么多互联网金融科技人才
重庆网络软件开发服务代理商
软件开发产品经理岗位职责
上海玄清软件开发
软件开发项目分工方案
国际军事网络安全事件
上海本茗互联网科技
如何看数据库配置管理
计算机网络技术有ps吗
梦幻西游手游再续前缘服务器在哪
惠普服务器raid驱动
安溪县天桥网络技术
软件开发创业后
app软件开发公司简介
综合日志审计支持采集的数据库
软件开发公司商业模式介绍
vs怎么写sql数据库
莱西安卓软件开发公司
软件开发怎么分级别
高科技互联网公司有哪些
数据库上下两列求和
网络安全为民ppt
网络安全和创新峰会
安卓软件开发服务咨询
龙口微信公众号软件开发企业
gp数据库介绍
鼓风机选型软件开发技术
高拍仪直接传送到服务器