from random import randint
from decimal import Decimal
from time import perf_counter
from contextlib import contextmanager
@contextmanager
def timed():
try:
start = perf_counter()
yield
finally:
end = perf_counter()
print(f'Elapsed: {end - start:.2f}s')
with timed():
xs = [Decimal(randint(0, 100)) for _ in range(10_000_000)]
def avg(xs):
return sum(xs) / len(xs)
with timed():
print(f'{avg(xs) = }')
from sys import getsizeof
print(f'{getsizeof(10) = }')
print(f'{getsizeof(10.0) = }')
print(f'{getsizeof(10 ** 20_000) = }')
Restricted computation domain:
from time import perf_counter
from contextlib import contextmanager
@contextmanager
def timed():
try:
start = perf_counter()
yield
finally:
end = perf_counter()
print(f'Elapsed: {end - start:.2f}s')
from numpy import array
from numpy.random import randint
with timed():
xs = randint(0, 100, size=(10_000_000))
with timed():
print(f'{xs.sum() = }')
from numpy import array
from numpy.random import randint
xs = randint(0, 1000, size=24)
xs = xs.reshape(2, 3, 4)
print(f'{xs}')
print(f'{xs.dtype = }')
print(f'{xs.shape = }')
print(f'{xs.strides = }')
print(f'{xs.__array_interface__ = }')
print(f'{xs}')
from numpy.random import randint
xs = randint(-32, 212, size=24)
print(f'{xs = }')
from pandas import DataFrame, to_datetime
from datetime import datetime, timedelta
from numpy import array
from numpy.random import randint
SIZE = 5
device_temp = randint(-32, 212, size=SIZE)
ambient_temp = randint(-32, 212, size=SIZE)
times = array([timedelta(seconds=randint(0, 60)) for _ in range(SIZE)]).cumsum() + datetime.now()
df = DataFrame({
'device': device_temp,
'ambient': ambient_temp,
}, index=to_datetime(times))
print(df)
rv = df.resample(rule='30s').mean()
print(rv)