Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 有没有零拷贝的方法从memoryview创建bytearray?_Python_Arrays_Buffer_Decode_Memoryview - Fatal编程技术网

Python 有没有零拷贝的方法从memoryview创建bytearray?

Python 有没有零拷贝的方法从memoryview创建bytearray?,python,arrays,buffer,decode,memoryview,Python,Arrays,Buffer,Decode,Memoryview,我遇到了一个我认为非常简单的问题(我希望是这样!),即从内存中取出原始数据,并将其解码为Unicode字符串 这样做是显而易见的方法,并且有效: the_string = mv.tobytes().decode("utf-8") 其中mv是有问题的memoryview。但是,这违背了零拷贝的目的,因为拷贝是由tobytes()方法生成的。因此,下一步要尝试的是将memoryview“投射”到bytearray。换句话说,创建一个bytearray,它使用内存视图“mv”作为其备份数据。我以为这

我遇到了一个我认为非常简单的问题(我希望是这样!),即从内存中取出原始数据,并将其解码为Unicode字符串

这样做是显而易见的方法,并且有效:

the_string = mv.tobytes().decode("utf-8")

其中mv是有问题的memoryview。但是,这违背了零拷贝的目的,因为拷贝是由tobytes()方法生成的。因此,下一步要尝试的是将memoryview“投射”到bytearray。换句话说,创建一个bytearray,它使用内存视图“mv”作为其备份数据。我以为这很简单,但我不知道怎么做。有没有人知道如何?

如果你不运行很多循环的行,就不需要考虑如何保存内存。