实验环境

python3

服务器:ubuntu18

客户端:win10

服务器端的Python文件第一行要加上这行代码:  #!/usr/bin/python3

服务器

from socket import *#创建套接字sockfd
sockfd = socket() #默认参数可以创建tcp套接字#套接字绑定服务器本机ip,端口
sockfd.bind(('172.23.45.235',8888))#让套接字具有监听功能,创建监听队列
sockfd.listen(5)while True:print("waiting for connect....")connfd,addr = sockfd.accept()  # accept函数主要用于服务器端,一般位于listen函数之后,默认会阻塞进程,# 直到有一个客户请求连接,建立好连接后,它返回的一个新的套接字connfd,以及客户的地址addr,# 此后,服务器端即可使用这个新的套接字connfd与该客户端进行通信,# 而sockfd则继续用于监听其他客户端的连接请求                                   print("connect from",addr)while True:data = connfd.recv(1024)  #收消息if not data:breakprint("客户端发来的消息:",data.decode())#发消息通过str.decode()编码connfd.send("服务端已收到消息!".encode()) #发消息#收消息通过str.encode()解码connfd.close()sockfd.close()

客户端

from socket import *#创建套接字
sockfd = socket()#发起连接,绑定服务器ip
sockfd.connect(("172.24.45.235",9090))while True:msg = input("发消息>>")#服务端那边是先收消息,所以客户端就先发#发消息sockfd.send(msg.encode())if not msg:break#收消息data = sockfd.recv(1024)print(data.decode())sockfd.close()

在服务器端运行时出现了错误99,98,部分原因是之前的程序未结束。此时ps显示当前进程,kill将进程杀死,然后重启终端,即可解决问题。

linux下用./xxx.py运行python文件。

注:客户端和服务器端的代码中socket bind绑定的IP需为同一个IP,此处绑定的IP为服务器IP。

代码原博:

https://www.cnblogs.com/hooo-1102/p/10766949.html

python实现TCP通信代码以及错误98,99的解决方法相关推荐

  1. Epoll 的tcp通信代码(服务器+客户端)

    http://blog.csdn.net/libinbin_1014/article/details/50096187 Epoll 的tcp通信代码(服务器+客户端) /* gcc -D_LARGEF ...

  2. python 蓝牙开发_基于python实现蓝牙通信代码实例

    这篇文章主要介绍了基于python实现蓝牙通信代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 安装和示例 linux下安装 sudo apt ...

  3. python写安卓app控制蓝牙_基于python实现蓝牙通信代码实例

    这篇文章主要介绍了基于python实现蓝牙通信代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 安装和示例 linux下安装 sudo apt ...

  4. tcp连接时,BROKEN PIPE错误的原因以及解决方法

    tcp连接时,BROKEN PIPE错误的原因以及解决方法 参考文章: (1)tcp连接时,BROKEN PIPE错误的原因以及解决方法 (2)https://www.cnblogs.com/ctho ...

  5. windows下 python 使用 pip 安装TA-Lib报错的原因及解决方法

    windows下 python 使用 pip 安装TA-Lib报错的原因及解决方法 问题环境 问题描述 问题原因 & 解决办法 问题环境 Windows 10 x64 .python 3.8. ...

  6. (转)SQL Server数据库复制错误的原因及解决方法

    在使用SQL Server数据库中,有时在复制时会出现错误,下面就为你分类介绍SQL Server数据库复制错误的原因及解决方法,希望对您学习SQL Server数据库有所帮助. 错误 消息 MSSQ ...

  7. 计算机蓝屏无法启动代码50,电脑蓝屏代码0x0000007b无法正常启动的解决方法

    电脑出现蓝屏是十分常见的故障之一,而在蓝屏的时候会提示蓝屏代码,不同的蓝屏代码代表不同的意义,让我们快速的了解电脑是什么问题.那么遇到电脑蓝屏代码0x0000007b怎么办?下面装机之家分享一下电脑蓝 ...

  8. python用matplotlib汇总的图像的title为方框解决方法

    python用matplotlib汇总的图像的title为方框解决方法 问题描述截图(标题无法显示) 加入代码: from pylab import mpl mpl.rcParams['font.sa ...

  9. 元空间不足java.lang.OutOfMemoryError: PermGen space 错误的原因及解决方法

    出现 java.lang.OutOfMemoryError: PermGen space 错误的原因及解决方法 原因:堆内存的永久保存区内存分配不足(缺省默认为64M),导致内存溢出错误. 解决的方案 ...

最新文章

  1. ajax请求,请求头是provisional are shown。请求未发送出去
  2. 企业网络推广——浅析企业网络推广怎样看待企业网站的制作
  3. 利用正则表达式去掉html代码
  4. 万事开头难 - 介绍IMX6ULL启动方式
  5. unc 隐藏共享文件夹_你真的了解任务栏吗?win10任务栏居然隐藏了这么多小窍门...
  6. php获得6个月以前的日期,请问下使用PHP如何获取某个月的所有日期
  7. js基础教程学习笔记
  8. Java生成CSV文件的方法
  9. facade(外观)模式
  10. Linux之进程处理方式
  11. Win7 下面升级VS2017 vs_community install Microsoft.Windows.D3DCompiler.Msu.Win7
  12. 2022前端面试笔试题及答案
  13. matlab的简单使用-matlab画f(x)=x^2+y^2的图像
  14. 炉石传说游戏系统拆解和部分系统分析
  15. 扫雷win10_厉害了,一个自动扫雷游戏项目!
  16. Adoby photoshop cs5永久序列号
  17. 2021-07-14软件测试实习所学内容
  18. 为什么要用并发编程?
  19. psid mysql_sql-帮助将子查询转换为具有联接的查询
  20. node配置淘宝镜像

热门文章

  1. 分支-11. 计算工资(15)
  2. 网络里面的计算机访问不了怎么办,电脑连接不上网络怎么办,5步操作教你完美解决问题...
  3. php unzip函数,PHP解压zip文件函数
  4. 如何重置wordpress用户密码
  5. 严嵩:是奸臣 也是家具收藏大咖
  6. ERROR: Cannot determine archive format of /tmp/pip-req-build-pi0rx8q
  7. 【拓展】你真的会写 Markdown 么?
  8. Medical Data for Machine Learning
  9. combox绑定总结
  10. novas的verdi和debussy是干什么用的(关于debussy的一些介绍)