diff options
author | MarcoFalke <falke.marco@gmail.com> | 2022-03-08 14:56:34 +0100 |
---|---|---|
committer | MarcoFalke <falke.marco@gmail.com> | 2022-03-08 15:00:40 +0100 |
commit | 64a4483dc6798a9a7d8327d320a17b3c4d7d4ee0 (patch) | |
tree | eec5006a82a2a83496a242f7172f0289032089be /depends/hosts | |
parent | c9ed9927bbb7c422c4e01c0c1adc9722b8671009 (diff) | |
parent | 31846b006da46852cfce91e53427dc8f871b3fda (diff) | |
download | bitcoin-64a4483dc6798a9a7d8327d320a17b3c4d7d4ee0.tar.xz |
Merge bitcoin/bitcoin#24496: test: refactor: use `random.sample` for choosing random keys in wallet_taproot.py
31846b006da46852cfce91e53427dc8f871b3fda test: refactor: use `random.sample` for choosing random keys in wallet_taproot.py (Sebastian Falbesoner)
Pull request description:
The Python3 standard library method `random.sample` has the exact same functionality as the helper method `rand_keys(...)` (that is, random sampling without replacement) on a generic set or sequence, i.e. we can simply replace it. See https://docs.python.org/3/library/random.html#random.sample
Note that this is also safer: in case that the sample size `k` is larger than the population count, `random.sample` throws an error:
```
$ python3
Python 3.8.12 (default, Sep 26 2021, 13:12:50)
[Clang 11.1.0 ] on openbsd7
Type "help", "copyright", "credits" or "license" for more information.
>>> import random
>>> random.sample([23, 42], 3)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.8/random.py", line 363, in sample
raise ValueError("Sample larger than population or is negative")
ValueError: Sample larger than population or is negative
```
while the custom method would get stuck in an endless loop.
ACKs for top commit:
shaavan:
Code Review ACK 31846b006da46852cfce91e53427dc8f871b3fda
Tree-SHA512: d9bd7f8128e43401a5b0388e48ba838155b21db5b4b6ba95c91285880788bc3917cb656b74bbe2d97faf7b44862d20b0899dc3c56aa48b9d2b33b50e37d089f6
Diffstat (limited to 'depends/hosts')
0 files changed, 0 insertions, 0 deletions