python如何去除字符串中不可见字符(\x00)
2023-03-20 15:36:11 时间
问题:无法用json.loads()解析数据。
现象:但是将收到的数据复制粘贴成字符串就可以接续出来。纠结了很久才发现,两个长度不一样。
str是看不出来的,于是就转换成了bytes,发现
收到的数据为:
<class ‘bytes’> b’ x00x00x00x00x00x00x00x00{ "author": “app” }’
而复制出来的字符串没有x00
原代码
self.data = self.request.recv(1024).decode('UTF-8', 'ignore').strip()
其中strip()只能去掉 ,\n, ,无法去掉x00。
解决办法:
在源码后添加strip(b'x00'.decode())即可。
self.data = self.request.recv(1024).decode('UTF-8', 'ignore').strip().strip(b'x00'.decode())
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
strip()方法语法:
str.strip([chars]);
推荐学习:《Python教程》
相关文章
- Python中的函数与方法 以及Bound Method和Unbound Method
- 一文贯通python文件读取
- Python 中的异步编程:Asyncio
- 7个你现在就该学习Python的理由
- 提高Python运行效率的六个窍门
- Python数据科学:神经网络
- 一篇文章看懂大数据分析就业前景及职能定位
- R和Python中的文本挖掘:8个入门小贴士
- 告诉你为什么Python有点慢,但我却无所谓?
- 专注学习DevOps编程语言Top 5推荐
- Python发送邮件脚本
- Python多进程并行编程实践: mpi4py 的使用
- Python语言在未来的发展前景
- Python vs Ruby: 谁是最好的 web 开发语言?
- Python对Ruby:谁在Web开发领域更胜一筹?
- Python一行代码完成并行任务
- Python开发者2017应该关注的七个类库
- python爬虫入门基本知识
- 在终端中优雅地编写Python
- Python机器学习实战:信用卡欺诈检测