python转二进制字符串_python如何将二进制串(UTF-8)转换为字符串?

已知一个二进制串(UTF-8编码格式)列表(每一项为一字节8bit):

b=['01010000', '01111001', '01110100', '01101000', '01101111', '01101110', '11100101', '10100100', '10100111', '11100110', '10110011', '10010101']

#即字符串"Python大法"

如何将其转换为字符串呢?

string = ""

for i in b:

string += chr(int(i,2))

print(string)

#这种方式对应纯ASCII编码的字符串是可以的

但UTF-8不可以,我们知道UTF-8是变长的,一个字符通常要占到3个甚至4个字节,上述代码运行结果是:

'Python大æ³x95'

很明显因为中文字符占到三个字节,自然每个字节chr()一次自然会乱码。那又该如何处理变长的UTF-8编码呢?

附:

UTF-8编码方式:

1.对于单字节的符号,字节的第一位设为0,后面7位为这个符号的unicode码。因此对于英语字母, UTF-8编码和ASCII码是相同的。

2.对于n字节的符号(n>1),第一个字节的前n位都设为1,第n+1位设为0,后面字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个符号的unicode码。

这里我想到一个处理多字节UTF-8的思路,大家看看是否可行:

(循环)当检测到一项的前两位是"11"时,用正则提出前面的所有1,即这个字符所占字节数,然后找到后面的字节,去掉10,然后将这几个字节去掉前面的部分("1110"/"10")后剩下的合并,就是这个字符对应的Unicode编码了,然后chr(int(i,2))。

那么请教大家,这样的思路该如何实现?或者各路大神有什么简便算法呢?抑或是有相关模块可以做这样的处理呢?(初入勿怪)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/558585.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python中reshape_Numpy之reshape()使用详解

如下所示:Numpy中reshape的使用方法为:numpy.reshape(a, newshape, orderC)参数详解:1.a: type:array_like(伪数组,可以看成是对数组的扩展,但是不影响原始数组。)需要reshape的array2.newshape:新的数组新形状应与原形状兼容。如…

vue 手机端路由切换滑动_vue移动端router-view嵌套实现底部导航切换

路由使用 vue-router组件库使用 vue-ydui效果图:登录.png主界面-首页.png主界面-办事大厅.png项目结构图片.png大体流程图片.png路由代码import Vue from vueimport Router from vue-routerimport home from ../page/homeimport office from ../page/officeimport m…

bs4 乱码_Python BeautifulSoup中文乱码问题的2种解决方法

解决方法一:使用python的BeautifulSoup来抓取网页然后输出网页标题,但是输出的总是乱码,找了好久找到解决办法,下面分享给大家首先是代码复制代码 代码如下:from bs4 import BeautifulSoupimport urllib2url //www.jb51.net/page urllib2.urlopen(url)soup Beaut…

白噪声检测_科学家尝试用智能扬声器的白噪声来监测婴儿的呼吸运动

华盛顿大学的一支研究团队,刚刚介绍了他们开发的一种新型智能扬声器技术。这种设备能够借助白噪声来安抚熟睡的婴儿,并监测他们的呼吸和运动。具体说来是,通过智能扬声器发出的白噪声,原型设备能够将之与生命体征监测仪的数据相匹…

最大值_285期 博最大值2路,已经箭在弦上!

往期数据P-5掉码 跨度 和尾 012断路 余数和 位数86072 1 8 4 200 断1路2 5 对214对 双双双79703 0 2 3 101 断2路2 4 对215对 单单单62386 0 4 1 020 断1路2 4 错216对 双双单71903 0 8 7 110 断2路2 5 错217对 单单单64838 0 4 8 012 来3路3 4 错218对 双双双02052 0 2 2 020 …

商品领域ddd_为 Gopher 打造 DDD 系列:领域模型-资源库

前言: 作为领域模型中最重要的环节之一的Repository,其通过对外暴露接口屏蔽了内部的复杂性,又有其隐式写时复制的巧妙代码设计,完美的将DDD中的Repository的概念与代码相结合!Repository资源库通常标识一个存储的区域…

mysql5.7主从全备恢复_Mysql5.7—运维常用备份方式(超全)

小生博客:http://xsboke.blog.51cto.com小生 Q Q:1770058260-------谢谢您的参考,如有疑问,欢迎交流一、 Mysqldump备份结合binlog日志恢复使用mysqldump进行全库备份,并使用binlog日志备份,还原时&#xf…

客户端连接mysql 自动断开_MySql连接空闲8小时自动断开的原因及连接池配置方法...

数据库连接超时时间查询非交互式超时时间,如 JDBC 程序show global variables like wait_timeout;交互式超时时间,如数据库工具show global variables like interactive_timeout;MySQL服务器默认的“wait_timeout”是28800秒即8小时,意味着如…

docker 运行容器_Docker之运行 Django 容器

首先此篇笔记默认你已经安装好了 Docker,并了解 Docker 的基础概念,诸如镜像、容器、以及他们之间的关系等。如果不太了解,等我回头了解清楚以后,可以再写一篇文章阐述一下。(狗头当然,对于这篇文章&#x…

mysql类似的数据库_MemSQL学习笔记-类似MySQL的数据库

http://gigaom.com/cloud/ex-facebookers-launch-memsql-to-make-your-database-fly/-- 多主-从http://www.mysqlops.com/2012/02/14/diy_multi_master_replication.htmlhttp://www.cnblogs.com/liuhao/archive/2012/06/26/2563702.html前facebook员工和前微软sql server工程师…

mysql8.0与mysql7.0_MySQL 5.7 vs 8.0,哪个性能更牛?

测试mysql5.7和mysql8.0分别在读写,选定,只写模式下不同并发时的性能(tps,qps)最早测试使用版本为mysql5.7.22和mysql8.0.15sysbench测试前先重启mysql服务,并清除os的缓存(避免多次测试时命中缓存)每次进行测试都是新生成测试数据…

linux+mysql+导出备份_Linux系统MySQL备份的导入导出的具体分析

问题描述如何对 ECS Linux 系统中的 MySQL 进行备份的导入和导出。处理办法MySQL 备份的导出MySQL 备份的导入MySQL 备份的导出注意:如果您使用的是帮助中心的一键环境配置,那么 MySQL 的安装目录是 /alidata/server/mysql。如果您将 MySQL 安装到其他目…

springmvc使用requestmapping无法访问控制类_研究人员称人类使用的新烟碱类杀虫剂让蜜蜂无法入睡...

来自布里斯托尔大学的科学家进行了研究,显示常见的杀虫剂可以阻止蜜蜂和苍蝇睡个好觉。就像人类一样,许多昆虫也需要睡眠才能正常工作。然而,如果它们接触过新烟碱类杀虫剂,它们的睡眠就会受到影响,新烟碱类杀虫剂是一…

linux 监控mysql脚本_Linux系统MySQL主从同步监控shell脚本

操作系统:CentOS系统目的:定时监控MySQL数据库主从是否同步,如果不同步,记录故障时间,并执行命令使主从恢复同步状态1、创建脚本文件vi /home/crontab/check_mysql_slave.sh #编辑,添加下面代码#!/bin/sh…

mysql 1066解决方法_MySQL查询语法帮助:错误#1066-表格/别名不唯...

我有四个表,user,user_billingprofile,user_shippingprofile和user_address.用户:userId,dateCreateduser_billingprofile:userId,地址user_shippingprofile:userId,地址user_address:随机地址废话这是我必须一目了然地获取用户帐…

python创建新进程_Python:创建新进程

我是Python新手。我应该创建一个有多个菜单的GUI。单击特定菜单时,应启动一个新进程,并且不应挂起用户界面。但我不能做到这一点。在网上搜索之后,我做了一个类似的代码。在在这段代码中,我的目标是使“print deep”语句处于活动状…

python协成_Python协程(上)

几个概念:event_loop 事件循环:程序开启一个无限的循环,程序员会把一些函数注册到事件循环上。当满足事件发生的时候,调用相应的协程函数。coroutine 协程:协程对象,指一个使用async关键字定义的函数&#…

python参数检验框架_基于python的人员识别检测框架研究

import numpy as np # 数据处理的库 Numpyimport cv2 # 图像处理的库 OpenCvimport osimport shutilimport _threadimport wximport csvfrom importlib import reloadfrom skimage import io as iioimport face_recognize_punchcardimport sys# 创建 cv2 摄像头对象#…

js父元素获取子元素img_css,前端_父标签div中包含一个子元素img标签,子元素div标签,为什么img要加上浮动,子元素div才会处于正常位置?,css,前端 - phpStudy...

父标签div中包含一个子元素img标签,子元素div标签,为什么img要加上浮动,子元素div才会处于正常位置?dom结构如图img加上float 子元素div显示正常。不加float div显示错位。附上我写的一个dome测试用的,大家可本地看下究…

android运营商获取本机号码_一键登录已成大势所趋,Android端操作指南来啦!

根据极光(Aurora Mobile)发布的《2019年Q2移动互联网行业数据研究报告》,2019年第二季度,移动网民人均安装APP总量已达56款。面对如此繁多的APP,想在用户的手机中占据一席之地,移动开发者们就不得不努力提升用户体验。而现实却是&…