Связывание имени «shakespeare» и выражения.
Выражение в URL вызывает функцию urlopen, URL содержит полный текст 37 пьес Шекспира в одном текстовом файле.
Функция. Функция инкапсулирует логику обработки данных. Web-адрес — это одна часть данных, текст пьес Шекспира — другая. Процесс создания второго из первого может быть сложным, но мы можем вызвать их через одно выражение, потому что вся сложность заключена в функции. Функция является основной темой этой главы.
Ещё один оператор присваивания:
>>> words = set(shakespeare.read().decode().split())
Связывает имя words с набором всех уникальных слов из пьес Шекспира, всего 33 721 слово. Эта цепочка команд вызывает read, decode и split, каждая из которых действует на связанный объект: данные, считываемые из URL, декодированные текстовые данные и текст, разделённый на слова. Все эти слова помещаются в set.
Объект. Набор — это тип объекта, который поддерживает операции взятия пересечения и проверки принадлежности. Объект объединяет данные и логику работы с данными и делает это таким образом, чтобы скрыть сложность. Объекты являются основной темой второй главы.
Выражение:
>>> {w for w in words if len(w) >= 5 and w[::-1] in words}
{'madam', 'stink', 'leets', 'rever', 'drawer', 'sessa',
'repaid', 'speed', 'redder', 'devil', 'minim', 'spots', 'asses',
'refer', 'lived', 'keels', 'diaper', 'sleek', 'steel', 'leper',
'level', 'deeps', 'repel', 'reward', 'knits'}
является составным выражением, которое находит слова из словаря Шекспира, которые появляются в прямом или обратном порядке. Таинственный символ w[::-1] перебирает каждый символ в слове, но -1 указывает на обратный порядок (:: означает, что используются значения по умолчанию для первого и последнего слова). Когда вы вводите выражение в интерактивном сеансе, Python будет печатать его значение, как показано выше.
Интерпретатор. Для решения составного выражения требуется предсказуемый процесс для точного выполнения кода интерпретатора. Программа, которая выполняет этот процесс и решает выражение и операторы, называется интерпретатором. Дизайн и реализация интерпретатора являются основной темой третьей главы.
По сравнению с другими компьютерными программами, интерпретаторы языков программирования обычно довольно уникальны. Python не был разработан с намерением следовать за Шекспиром или палиндромами, но его огромная гибкость позволяет нам обрабатывать большие объёмы текста с помощью небольшого количества кода.
Наконец, мы обнаруживаем, что все эти основные концепции тесно связаны: функция — это объект, объект — это функция, а интерпретатор — это экземпляр обоих. Однако чёткое понимание этих концепций и того, как они работают в организации кода, является ключом к овладению искусством программирования.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )