chunkSize = 2
print(':'.join(''.join(g[i:i + chunkSize]) for i in range(0, len(g), chunkSize)))
def get_min_value(materials):
return min(m for n in materials for m in n.values())
def filter_materials(materials, min_value):
return [ n for n in materials if all(m >= min_value for m in n.values()) ]
materials_in_stock = filter_materials(materials_in_stock, get_min_value(required_material))
zero, one, two, three, four, five, six, seven, eight, nine = \
[ lambda f = None, v = i: f(v) if callable(f) else v for i in range(10) ]
plus = lambda a: lambda b: b + a
minus = lambda a: lambda b: b - a
times = lambda a: lambda b: b * a
divided_by = lambda a: lambda b: b // a
Нужно взять число
\w+
\w+
- это не число. Число - это минус (возможно отсутствует), затем целая часть (цифры), затем дробная часть (точка и цифры, возможно отсутствует).между парой @@
[@@]
@{2}
. Или можно просто два раза нужный символ указать.re.findall(r'(?<=@@)-?\d+(?:\.\d+)?(?=@@)', text)
N = 1000
M = 300
NM = N + M
newArr = sum((arr[i * NM:(i + 1) * NM - M] for i in range(ceil(len(arr) / NM))), [])
separator = 'lot'
item = 'obj'
count = [ n.count(item) for n in s.split(separator)[1:] ]
print(' '.join(f'[{separator} {n} {item}]' for n in count))