Проверка, что в командной строке есть аргумент, начинающийся с --ansible-inventory
if any([a.startswith("--ansible-inventory") for a in sys.argv]): ...
Материализация в список тут избыточна. А так — всегда так пишу.
О, не, не всегда.
Кроме задачи «проверить существование»:
if any(p(x) for x in xs): ...
иногда встречается задача «проверить существование и предъявить один пример»:
x0 = next((x for x in xs if p(x)), None) if x0 is not None: ...
В особом случае, когда None — допустимый x, можно завести отдельный sentinel:
sentinel = object() x0 = next((x for x in xs if p(x)), sentinel) if x0 is not sentinel: ...
А также задача «проверить существование и предъявить все примеры».
xs0 = [x for x in xs if p(x)] if xs0: ...
Нормально.
no subject
Date: 2022-06-18 03:45 pm (UTC)Материализация в список тут избыточна. А так — всегда так пишу.
no subject
Date: 2022-06-18 03:47 pm (UTC)no subject
Date: 2022-06-18 04:18 pm (UTC)О, не, не всегда.
Кроме задачи «проверить существование»:
иногда встречается задача «проверить существование и предъявить один пример»:
В особом случае, когда None — допустимый x, можно завести отдельный sentinel:
А также задача «проверить существование и предъявить все примеры».
no subject
Date: 2022-06-18 07:39 pm (UTC)Нормально.