bool-hybrid-array 9.11.6__py3-none-any.whl → 9.11.7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- bool_hybrid_array/__init__.py +1 -1
- bool_hybrid_array/core.py +7 -3
- {bool_hybrid_array-9.11.6.dist-info → bool_hybrid_array-9.11.7.dist-info}/METADATA +2 -2
- bool_hybrid_array-9.11.7.dist-info/RECORD +10 -0
- bool_hybrid_array-9.11.6.dist-info/RECORD +0 -10
- {bool_hybrid_array-9.11.6.dist-info → bool_hybrid_array-9.11.7.dist-info}/WHEEL +0 -0
- {bool_hybrid_array-9.11.6.dist-info → bool_hybrid_array-9.11.7.dist-info}/licenses/LICENSE +0 -0
- {bool_hybrid_array-9.11.6.dist-info → bool_hybrid_array-9.11.7.dist-info}/top_level.txt +0 -0
bool_hybrid_array/__init__.py
CHANGED
bool_hybrid_array/core.py
CHANGED
|
@@ -304,6 +304,9 @@ class BoolHybridArray(MutableSequence,Exception,metaclass=ResurrectMeta):
|
|
|
304
304
|
self.size -= 1
|
|
305
305
|
def __str__(self) -> str:
|
|
306
306
|
return f"BoolHybridArr([{','.join(map(str,self))}])"
|
|
307
|
+
def __reversed__(self):
|
|
308
|
+
if not self:return BHA_Iterator([])
|
|
309
|
+
return BHA_Iterator(map(self.__getitem__,range(-1,-1,-1)))
|
|
307
310
|
def insert(self, key: int, value: bool) -> None:
|
|
308
311
|
value = bool(value)
|
|
309
312
|
key = key if key >= 0 else key + self.size
|
|
@@ -325,8 +328,9 @@ class BoolHybridArray(MutableSequence,Exception,metaclass=ResurrectMeta):
|
|
|
325
328
|
self.large.insert(pos, key)
|
|
326
329
|
self.size += 1
|
|
327
330
|
def __len__(self) -> int:
|
|
328
|
-
return self.size
|
|
331
|
+
return int(self.size)
|
|
329
332
|
def __iter__(self):
|
|
333
|
+
if not self:return BHA_Iterator([])
|
|
330
334
|
return BHA_Iterator(map(self.__getitem__,range(self.size)))
|
|
331
335
|
def __next__(self):
|
|
332
336
|
return next(self.generator)
|
|
@@ -342,7 +346,7 @@ class BoolHybridArray(MutableSequence,Exception,metaclass=ResurrectMeta):
|
|
|
342
346
|
else:
|
|
343
347
|
return len(self.large) == self.size-self.split_index-1 or b
|
|
344
348
|
def __bool__(self) -> bool:
|
|
345
|
-
return self.size
|
|
349
|
+
return bool(self.size)
|
|
346
350
|
def __any__(self):
|
|
347
351
|
return T in self
|
|
348
352
|
def __all__(self):
|
|
@@ -845,7 +849,7 @@ class BHA_Queue:
|
|
|
845
849
|
self.a = BoolHybridArr(data,*a,**k)
|
|
846
850
|
self.b = BoolHybridArr([],*a,**k)
|
|
847
851
|
def __str__(self):
|
|
848
|
-
return f"BHA_Queue([{','.join(itertools.chain(
|
|
852
|
+
return f"BHA_Queue([{','.join(itertools.chain(map(str,reversed(self.b)),map(str,self.a)))}])"
|
|
849
853
|
__repr__ = __str__
|
|
850
854
|
def enqueue(self,v):
|
|
851
855
|
self.a.push(v)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: bool-hybrid-array
|
|
3
|
-
Version: 9.11.
|
|
3
|
+
Version: 9.11.7
|
|
4
4
|
Summary: 一个高效的布尔数组(密集+稀疏混合存储,节省内存)
|
|
5
5
|
Home-page: https://github.com/BKsell/bool-hybrid-array
|
|
6
6
|
Author: 蔡靖杰
|
|
@@ -612,7 +612,7 @@ print(f"出队2个元素后: {q}") # 输出:BHA_Queue([T,T,F,T,F])
|
|
|
612
612
|
* **9.11.4**:修复TypeError: __dict__ must be set to a dictionary, not a 'IntHybridArray'的错误
|
|
613
613
|
* **9.11.5**:新增BHA_Queue双栈实现队列
|
|
614
614
|
* **9.11.6**:修复从9.11.3版本开始cpython用户无法安装bool-hybrid-array包的问题
|
|
615
|
-
|
|
615
|
+
* **9.11.7**:修复TypeError: 'map' object is not reversible的错误
|
|
616
616
|
|
|
617
617
|
|
|
618
618
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
bool_hybrid_array/__init__.py,sha256=MvnpVFUFs0Dtf69ZsTguNfXP2k1PHhR2e9Hwsz6weR4,1039
|
|
2
|
+
bool_hybrid_array/__main__.py,sha256=pjoWN4Noa_K44fqQPqp8H-diKSDf0Da8hdWFgvWUigQ,9083
|
|
3
|
+
bool_hybrid_array/core.py,sha256=QlAhD8TSRIym76ZjtfYdLsaqtz3Es_dYT754RMQoUoY,40854
|
|
4
|
+
bool_hybrid_array/秘密.md,sha256=Ii2NvXmv-Ktu04zJsGLcQZvlzT4gOatByE4B2wTK1Ks,48
|
|
5
|
+
bool_hybrid_array/int_array/__init__.py,sha256=HPBdZu5qlXaRI4n_oK6WhnG4ml8H-FP1G44igVxPJIA,6225
|
|
6
|
+
bool_hybrid_array-9.11.7.dist-info/licenses/LICENSE,sha256=Sg4rnGXkBDYkwJCWyxdWp5H60rhVAxpNvFh_l3JWZdY,1070
|
|
7
|
+
bool_hybrid_array-9.11.7.dist-info/METADATA,sha256=Dsk-thuJ8y4ikh_JK2Ckht-ar5WhiwJow68-mLH_zL0,25858
|
|
8
|
+
bool_hybrid_array-9.11.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
9
|
+
bool_hybrid_array-9.11.7.dist-info/top_level.txt,sha256=vk-TD77wuVQsN1rJ6uVWZX4sC_wya_WplRDwQKJoBZM,18
|
|
10
|
+
bool_hybrid_array-9.11.7.dist-info/RECORD,,
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
bool_hybrid_array/__init__.py,sha256=YIYlFVq3n1DKvqVwK5dzqUze8mJolyMk4AE0uPKueTM,1039
|
|
2
|
-
bool_hybrid_array/__main__.py,sha256=pjoWN4Noa_K44fqQPqp8H-diKSDf0Da8hdWFgvWUigQ,9083
|
|
3
|
-
bool_hybrid_array/core.py,sha256=AUFAN-Nlg8hSVafXI7CmFdDJ4i0xVuYiCnjhZqMas1E,40647
|
|
4
|
-
bool_hybrid_array/秘密.md,sha256=Ii2NvXmv-Ktu04zJsGLcQZvlzT4gOatByE4B2wTK1Ks,48
|
|
5
|
-
bool_hybrid_array/int_array/__init__.py,sha256=HPBdZu5qlXaRI4n_oK6WhnG4ml8H-FP1G44igVxPJIA,6225
|
|
6
|
-
bool_hybrid_array-9.11.6.dist-info/licenses/LICENSE,sha256=Sg4rnGXkBDYkwJCWyxdWp5H60rhVAxpNvFh_l3JWZdY,1070
|
|
7
|
-
bool_hybrid_array-9.11.6.dist-info/METADATA,sha256=khBRIgfaAZmSl7UUI6EwZs1qyHRu5AYz-15YurNQfUs,25787
|
|
8
|
-
bool_hybrid_array-9.11.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
9
|
-
bool_hybrid_array-9.11.6.dist-info/top_level.txt,sha256=vk-TD77wuVQsN1rJ6uVWZX4sC_wya_WplRDwQKJoBZM,18
|
|
10
|
-
bool_hybrid_array-9.11.6.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|