Частоту задают при инициализации девайса. Меняют редко. Так что на скорость не повлияет. А у программиста, который использует эту функцию, не будет граблей в виде "ой, я забыл, что надо удвоенный делитель подавать было".
sim3x:
А как без os.system?
bar, к сожалению, это аргумент скрипта Б. Функция f определяет, является ли этот аргумент (кусок этого аргумента) одним из элементов списка.
B.py
foos = ["not_given"]
def f(bar):
for foo in foos:
if foo in bar: return bar
A.py
foos = ["val0", "va1", "val2"]
for foo in foos:
os.system("B.py")
Мне надо, чтобы foos из А переопределили foos из B
Преимущество может быть в читаемости кода, например :) Если поиск по шаблону, код короче, но более мудрёный. Если считать файл однородным, то код проще, но он длинный и глупый получается.
Там повторяющиеся однотипные структуры, которые надо выявить, со списком проще не будет, мне кажется.
ЗЫ Забавно, ему ответили из фирмы, куда он хотел. Первым пунктом именно то, что мне сразу бросилось в глаза, но о чём никто не написал. Вторым, в общем-то, тоже.
А вот про функции и строки ему ничего не написали.
User23: Нет, я не могу писать в одну строчку, потому что не разберусь через полгода в написанном. И если я уволюсь, или кто-то вдруг захочет воспользоваться моим кодом, то надо, чтобы он был читаемым.
Но остальная тема про 10 коллег и юнит-тестирование для меня - тёмный лес.
Тут интересный момент, этот код был ответом на тестовое задание, и нигде в этом задании не было указано, что этот код будет развиваться и поддерживаться (что логично, тестовые задания не развивают и не поддерживают). И кем-то использоваться, кроме тестируемого человека и рецензента. Авторам бы неплохо было добавить строчку о назначении кода в своём задании.
Интересное решение, спасибо :)