Чем старше становлюсь, тем яснее понимаю, что не надо бояться отдыхать. Не надо пытаться сделать всё и сразу. Не надо бояться декомпозиции, итеративного подхода.

Вот яркий пример разницы в коде, который пишется вечером:

l = float(len(i))

hlmin = int(math.floor(l/2))  # Get indexes of pre/post-middle digits
hlmax = int(math.ceil(l/2))

a = i[:hlmin]                 # Get first/last half of number
b = i[hlmax:][::-1]

if a == b:                    # Is palyndrome
    return True

... и утром:

if i == i[::-1]:             # Is palyndrome
    return True

Вот этот репозиторий. Код ищет числа-палиндромы.

Из той же копилки откровенно идиотских решений (а я тогда работал в действительно крупной и известной компании):

if os.path.isfile(copy_path):
    pass
else:
    pass

До сих пор не могу пояснить, что хотел здесь сделать, но точно помню, что засиживался допоздна.

Вывод простой: спокойно обдумывать шаги и только после этого решительно их предпринимать, не наоборот. :)


Comments

comments powered by Disqus