implement customer models
This commit is contained in:
25
src/utils.py
Normal file
25
src/utils.py
Normal file
@@ -0,0 +1,25 @@
|
||||
import secrets
|
||||
|
||||
|
||||
def random_number_in_range(min_val: int, max_val: int) -> int:
|
||||
""" originally secure_rand """
|
||||
return min_val + secrets.randbelow(max_val - min_val + 1)
|
||||
|
||||
|
||||
def random_number_in_range_excluding(min_val: int, max_val: int, exclude: list[int]) -> int:
|
||||
""" originally secure_rand """
|
||||
|
||||
return min_val + secrets.randbelow(max_val - min_val + 1)
|
||||
|
||||
|
||||
def generate_random_list(list_len: int, min_val: int = 0, max_val: int = 255) -> list[int]:
|
||||
return [random_number_in_range(min_val, max_val) for _ in range(list_len)]
|
||||
|
||||
|
||||
def generate_random_matrix(rows: int, cols: int, min_val: int = 0, max_val: int = 255) -> list[list[int]]:
|
||||
return [[random_number_in_range(min_val, max_val) for _ in range(rows)] for _ in range(cols)]
|
||||
|
||||
|
||||
def xor_lists(l1: list[int], l2: list[int]):
|
||||
assert len(l1) == len(l2)
|
||||
return [l2[i] ^ l1[i] for i in range(len(l1))]
|
||||
Reference in New Issue
Block a user