有人对以下代码有什么想法吗?
>>> memoryview("abc") < memoryview("bca")
True
>>> memoryview("abc") > memoryview("bca")
True
>>> memoryview("abc") = memoryview("bca")
False
如何在不使用 tobytes
复制字符串的情况下比较 memoryview 对象的字符串?
有人对以下代码有什么想法吗?
>>> memoryview("abc") < memoryview("bca")
True
>>> memoryview("abc") > memoryview("bca")
True
>>> memoryview("abc") = memoryview("bca")
False
如何在不使用 tobytes
复制字符串的情况下比较 memoryview 对象的字符串?
memoryview()
对象不定义任何顺序,它的__lt__
和__gt__
方法返回NotImplemented
单例,表示它们不支持排序:
>>> memoryview("abc").__lt__(memoryview('bca'))
NotImplemented
>>> memoryview("abc").__gt__(memoryview('bca'))
NotImplemented
<
和>
运算符时,将引发TypeError
。>>> memoryview("abc").__eq__(memoryview('bca'))
False
>>> memoryview("abc").__eq__(memoryview('abc'))
True
>>> memoryview("abc").__ne__(memoryview('abc'))
False
>>> memoryview("abc").__ne__(memoryview('bca'))
True
.tobytes()
或 .tolist()
。
PyObject_Malloc
的交替地址分配有点有趣,因为它导致了连续的LT/GT测试都返回True。 - Eryk Sun