python套接字(《python核心编程》实例)报错
来源:互联网 发布:fgo淘宝石头号怎么用 编辑:程序博客网 时间:2024/05/16 11:36
书中的例子中报错,原因是下面的一行代码没有将字符串编码,所以将代码进行修改后代码可以正常运行。
tcpCliSock.send(data)
tcpCliSock.send(data.encode(encoding='utf-8'))
服务端
from socket import *Host=""#变量是空白的,表示可以使用任何可用的地址port=21567BUFSIZ=1024ADDR=(Host,port)tcpSerSock=socket(AF_INET,SOCK_STREAM) #分配了TCP套接字tcpSerSock.bind(ADDR)#将套接字绑定到服务器地址以及开启TCP监听器的调用tcpSerSock.listen(5)#连接被转接或者拒绝之前,传入请求的最大连接数while True: #等待服务器的连接,如果消息是空白的,意味着客户端已经退出 print("waiting for connection") tcpCliSock,addr=tcpSerSock.accept() print('connectin from:',addr) while True: data=tcpCliSock.recv(BUFSIZ).decode('utf-8') print("the client says: ",data) if not data: break tcpCliSock.send(data.encode(encoding='utf-8')) tcpCliSock.close()tcpSerSock.close()
客户端
from socket import *HOST='localhost'#主机名POST=21567#端口号,应该与服务端的端口号相同BUFSIZ=1024ADDR=(HOST,POST)tcpCliSock=socket(AF_INET,SOCK_STREAM)#分配了套接字tcpCliSock.connect(ADDR)while True: data=input('>') if not data: break tcpCliSock.send(data.encode(encoding='utf-8')) data=tcpCliSock.recv(BUFSIZ) if not data: break print(data.decode('utf-8'))tcpCliSock.close()
0 0
- python套接字(《python核心编程》实例)报错
- python 网络编程 TCP套接字实例
- Python 网络套接字编程
- python核心编程学习笔记-2016-08-21-01-客户端/服务器架构、套接字
- python核心编程-实例的默认参数
- Python 网络编程(套接字编程)
- 【python网络编程】TCP套接字
- python网络编程之<套接字1>
- python 网络编程学习 套接字socket
- [python] 专题七.网络编程之套接字Socket、TCP和UDP通信实例
- [python] 网络编程之套接字Socket、TCP和UDP通信实例
- <python核心编程> python基础
- Python核心编程----Python基础
- Python核心编程----Python对象
- python 核心编程 练习题
- 《Python核心编程》目录
- Python核心编程笔记
- Python 核心编程 笔记
- 浅析String,StringBuilder,StringBuffer的区别
- 使用cocos studio打包成apk失败的解决方案
- 导入的Eclipse项目到AndroidStudio中
- java synchronized关键字的用法
- 数据库的快速使用,(增,删,改)命令格式使用!
- python套接字(《python核心编程》实例)报错
- KEIL MDK编译报错“error: #5: cannot open source input file "stdarg.h": No”
- BILIBILI 高并发实时弹幕系统的实战之路 | 架构师实践日
- VC使用libcurl模拟登录CSDN并自动评论资源以获取积分
- java-转换时间日期格式字串为long型
- iOS- 基础 [NSString boolValue]结果分析
- 【学习OpenCV】内存数据输出至xml
- CSS实现的loading页面等待效果
- rank,dense_rank,row_number