(function toArrays(obj) {
const arr = Object.values(obj ?? {});
arr.forEach(n => n.children = toArrays(n.children));
return arr;
})(arr.reduce((acc, n) => {
const path = n.path.replace(/^\/|\/$/g, '').split('/');
const obj = path.reduce((p, c) => ((p.children ??= {})[c] ??= {}), acc);
Object.assign(obj, n);
return acc;
}, {}).children)
m
запоминать, а каким именно действием текущее значение набирается (или взять текущую монету, или пропустить). В конце вам надо будет от позиции m[-1][-1]
циклом while выполнять записанные ранее действия (или пропустить текущую монету и уменьшить r на 1, или взять и тогда уменьшить r на ее размер). >>> bool(0)
False
>>> bool(not 0)
True
if a and a_2 and b and b_2 and c and c_2 or a and a_2 and not b and not b_2 and c and c_2 or not a and not a_2 and b and b_2 and c and c_2
all([a, b, c])
>>> from urllib.parse import urlparse
>>> u = urlparse("postgres://admin:oocooSh7@postgres.host:5432/my_db")
>>> u.password
'oocooSh7'
>>> u.username
'admin'
>>> u.hostname
'postgres.host'
>>> u.port
5432
>>> u.path
'/my_db'
>>> us = urlparse("sqlite:///C:/Users/admin/site_db.sqlite3")
>>> us.path
'/C:/Users/admin/site_db.sqlite3'
>>> us.scheme
'sqlite'
>>>
readFile = input("введите полный путь к файлу чтения: ")
...
hash_object = hashlib.md5(b"readFile")
"любой_текст"
является только строкой и ничем еще(и уж точно не именем переменной) объясняют в первых уроках. def catch_session(func):
"""Decorator for Session"""
@wraps(func)
def wrapper(self, *args, **kwargs):
print(f"Try calling db func: {func.__name__}")
result = func(self, *args, **kwargs)
try:
self.session.commit()
print(f"Success calling db func: {func.__name__}\n")
except SQLAlchemyError as e:
print(f"Error - {e}\n")
self.session.rollback()
finally:
self.session.close()
return result
return wrapper
s = 'Вот какая-то длинная строка, ниже я установил лимит. Строка разбивается на подстроки по длине не превосходящей этот лимит.'
limit = 20
def foo(s, limit):
rows=[]
current_row=[]
length=0
lst = s.split()
for word in lst:
if limit <= (length + len(word) + 1):
rows.append(' '.join(current_row))
current_row=[word]
length = len(word)+1
else:
length += len(word)+1
current_row.append(word)
rows.append(' '.join(current_row))
return('\n'.join(rows))
print(foo(s, limit))
- Статусы заказа (открыт/выпущен/закрыт и т. п.)
- Статусы сборки заказа (ожидает сборки, сборка начата, сборка проверена, сборка завершена)
Формула оплаты заказа (тут много вариантов)- Фонд оплаты (собственные средства, федеральный бюджет, территориальный и т. п.))
- Внутренний клиент (одно из возможных внутренних ООО)
- Ответственный сотрудник
- Территориальный сектор
- Направление