mirror of
https://github.com/LBRYFoundation/LBRY-Vault.git
synced 2025-09-03 20:35:13 +00:00
util: add function "chunks"
taken from ElectrumX
67111a3c4c/electrumx/lib/util.py (L149)
This commit is contained in:
parent
1ebfcc0f36
commit
30ffb3d4dc
2 changed files with 15 additions and 1 deletions
|
@ -1,7 +1,7 @@
|
||||||
from decimal import Decimal
|
from decimal import Decimal
|
||||||
|
|
||||||
from electrum.util import (format_satoshis, format_fee_satoshis, parse_URI,
|
from electrum.util import (format_satoshis, format_fee_satoshis, parse_URI,
|
||||||
is_hash256_str)
|
is_hash256_str, chunks)
|
||||||
|
|
||||||
from . import SequentialTestCase
|
from . import SequentialTestCase
|
||||||
|
|
||||||
|
@ -104,3 +104,9 @@ class TestUtil(SequentialTestCase):
|
||||||
self.assertFalse(is_hash256_str('qweqwe'))
|
self.assertFalse(is_hash256_str('qweqwe'))
|
||||||
self.assertFalse(is_hash256_str(None))
|
self.assertFalse(is_hash256_str(None))
|
||||||
self.assertFalse(is_hash256_str(7))
|
self.assertFalse(is_hash256_str(7))
|
||||||
|
|
||||||
|
def test_chunks(self):
|
||||||
|
self.assertEqual([[1, 2], [3, 4], [5]],
|
||||||
|
list(chunks([1, 2, 3, 4, 5], 2)))
|
||||||
|
with self.assertRaises(ValueError):
|
||||||
|
list(chunks([1, 2, 3], 0))
|
||||||
|
|
|
@ -520,6 +520,14 @@ def is_non_negative_integer(val) -> bool:
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
|
def chunks(items, size: int):
|
||||||
|
"""Break up items, an iterable, into chunks of length size."""
|
||||||
|
if size < 1:
|
||||||
|
raise ValueError(f"size must be positive, not {repr(size)}")
|
||||||
|
for i in range(0, len(items), size):
|
||||||
|
yield items[i: i + size]
|
||||||
|
|
||||||
|
|
||||||
def format_satoshis_plain(x, decimal_point = 8):
|
def format_satoshis_plain(x, decimal_point = 8):
|
||||||
"""Display a satoshi amount scaled. Always uses a '.' as a decimal
|
"""Display a satoshi amount scaled. Always uses a '.' as a decimal
|
||||||
point and has no thousands separator"""
|
point and has no thousands separator"""
|
||||||
|
|
Loading…
Add table
Reference in a new issue