【python】bytearray和string之间转换,用在需要处理二进制文件和数据流上

最近在用python搞串口工具,串口的数据流基本读写都要靠bytearray,而我们从pyqt的串口得到的数据都是string格式,那么我们就必须考虑到如何对这两种数据进行转换了,才能正确的对数据收发。

先考虑的接收串口数据,那么格式是bytearray,下面需要处理成string格式来显示:

#按string来显示,byarray代表接收到的数据
readstr = byarray.decode(‘utf-8‘)#这样就直接转换成str格式

#强制转换
readstr = str(byarray)#用这种方式得到的数据会带有b‘‘字符

#将读取的数据按十六进制字符显示,能让我们直接看到最底层的数据格式
readstr = ‘ ‘.join(hex(x) for x in byarray)#这句能把byarray里的数据遍历一遍转换成hex格式,而且用空格相连

将string格式转换成bytearray:

#wrstr代表从串口读到的字符串
byarray = wrstr.encode() #得到b‘‘数据
时间: 2024-10-25 16:47:46

【python】bytearray和string之间转换,用在需要处理二进制文件和数据流上的相关文章

HTML5 Blob与ArrayBuffer、TypeArray和字符串String之间转换

1.将String字符串转换成Blob对象 //将字符串 转换成 Blob 对象 var blob = new Blob(["Hello World!"], { type: 'text/plain' }); console.info(blob); console.info(blob.slice(1, 3, 'text/plain')); 2.将TypeArray  转换成 Blob 对象 //将 TypeArray 转换成 Blob 对象 var array = new Uint16A

C# char 和string之间转换

har数组要转换成string可没想象的那么容易.需要使用到System.Text.StringBuilder!实例如下: char[] temp={a,b,c};System.Text.StringBuilder sb = new System.Text.StringBuilder();sb.Append(temp);string target=sb.ToString(); 反过来就比较容易了,stringValue.ToCharArrary()就可以了. from: http://blog.

Date 和 String 之间 转换

import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class DateTest { public static void main(String[] args) throws ParseException { Date date = new Date(); /* * 把java.util.Date转换为指定格式String */ SimpleDateF

Python int与string 的转换

string → int 1.10进制的string转化为int int('12')  → type(int('12')) 进行验证 2.16进制的string转化为int int('12', 16) int → string 1.int转化为10进制的string s1 = str(18) print s1 #输出 18 2.int转化为16进制的string tt = hex(18) print tt   #输出0x12

C#中char[]与string之间的转换

string 转换成 Char[] string ss = "abcdefg"; char[] cc = ss.ToCharArray(); Char[] 转换成string string s = new string(cc); 此外,byte[] 与 string 之间的装换 byte[] bb = Encoding.UTF8.GetBytes(ss); string s = Encoding.UTF8.GetString(bb); 我们也可以利用 StringBuilder 来进行

Java 带分隔字符串、字符串数组和 ArrayList<String> 之间的转换

太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 一.先来认识一下标题说的这三件东西,也许描述的不清楚,但有了下面的例子,就不会有歧义了 1.带分隔字符串是这样的: String seperate

char* 、const char*和string之间的转换

1. const char* 和string 转换 (1) const char*转换为 string,直接赋值即可. EX: const char* tmp = "tsinghua". string s = tmp; (2) string转换为const char*,利用c_str() EX:  string s = "tsinghua"; const char*tmp = s.c_str(); 2. char*和const char*之间的转换 (1) cons

C# char[]与string之间的转换 byte[]与string之间的转化

1.char[]与string之间的转换 //string 转换成 Char[] string str="hello"; char[] arr=str.ToCharArray(); //Char[] 转换成 string string str1 = new string(arr); 2.byte[]与string之间的转化 string str = "你好,hello"; byte[] bytes; //byte[] 转换成 string bytes = Encod

python unicode和string byte

python unicode 和string那?? 开发过程中总是会碰到string, unicode, ASCII, 中文字符等编码的问题, 每次碰到都要现搜, 很是浪费时间, 于是这次狠下心, 一定要搞清楚python 的string和Unicode到底怎么回事. 基础知识 我们都知道计算机只认0和1, 要想在计算机显示26个字母, 就要给他们一套映射规则: 计算机能认得的符号 --> 人类可读的符号. 这转换的过程就是一套编码规则. 字符集: 就是一套字符的集合(比如中文4000个汉字集合