Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

уже к концу 2007 года

очень интересно где вы работали с тех пор. Везде удавалось достигать быстрых релизов?

Сейчас заметил, что одна из ссылок как раз и ведёт на его гайд.
Если хотите изучать TLA+ советую почитать HIllel Wayne, у него есть несколько статей в блоге, и книга Practical TLA+.
С параметрами по умолчанию связана одна интересная особенность: они вычисляются на этапе компиляции модуля в байт-код

Это не так. Определения функций (и классов) "вычисляются" на этапе выполнения. Хотя я не уверен, что имеется в виду под этапом компиляции в байт-код. Насколько я понимаю такого "этапа" нет.


class HelloPrinter(list):
    def __init__(self):
        print('Hello')
        super().__init__()

def func(el, collection=HelloPrinter()):
    collection.append(el)
    print(collection)

print('Plain print')

func('a')
func('b')

def func(el, collection=HelloPrinter()):
    collection.append(el)
    print(collection)

func('c')
func('d')

➜ ~ python3 test_default_func.py   
Hello
Plain print
['a']
['a', 'b']
Hello
['c']
['c', 'd']

Судя по PEP, ввели не вариант, а новый механизм, потому что используя только or and можно было не всё сделать. Кроме того, что этими механизмами можно записывать условия в выражениях, они больше ничем не связаны. Собственно, варианты с or и and работают только потому, что эти бинарные операции работают лениво, и возвращают для or: первый операнд, если он сводится к True, иначе — второй; для and: первый операнд, если он — False, иначе второй.

Бот не учится, когда играет с людьми. И то, что про паузу в статье сказано, это комментатор неверно предположил.
2. ArchWiki. Я так понимаю, лучше без гибернации обойтись
все разговорные языки — это куча костылей, а букву «ё» всё ещё неудобнее набирать, чем «е»
«Я вам посылку принёс, только я вам её не отдам»

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Зарегистрирован
Активность