Генераторы словарей и модули Рython
Функции в языке Python Функции в языке PythonВсе функции в языке Python возвращают какое-либо значение, хотя вполне возможно (и часто так и делается) просто игнорировать это значение. Возвращаемое значение может быть единственным значением или кортежем значений,...
Реализация генераторов Реализация генераторовМы рассмотрели коллекции-последовательности, tuple, collections, na-medtuple и list, поддерживающие, как и строки, возможность извлечения срезов. Также было рассмотрено использование оператора распаковывания...
Парсинг документов XML Парсинг документов XMLXML: Для парсинга документов XML широко используются два основных подхода. Один из них основан на анализе DOM (Document Object Model -объектная модель документа), а другой - на использовании SAX (Simple API for XML - упрощенный...
Копирование коллекций Копирование коллекцийКопирование коллекций: Поскольку в языке Python повсюду используются ссылки на объекты, когда выполняется оператор присваивания (=), никакого копирования данных на самом деле не происходит. Если справа от оператора находится литерал,...
Чтение и запись текстовых файлов
Нам необходимо учесть тот факт, что в каждой строке может содержаться произвольное число ссылок на веб-сайты, поэтому мы продолжаем вызывать метод str.findO в цикле, пока поиск не завершится неудачей. Если обнаруживается строка "http://", мы увеличиваем значение переменной i (начальная позиция в строке) на длину строки "http://" и затем просматриваем все последующие символы, пока не будет найден символ, недопустимый в именах веб-сайтов.

Если обнаружена ссылка на сайт (в качестве простой проверки мы убеждаемся, что она содержит символ точки), мы добавляем ее в словарь. Мы не можем использовать выражение sites[site]. add(filename), потому что в самый первый раз, когда сайт еще отсутствует в словаре, это выражение будет возбуждать исключение KeyError - т. к. нельзя добавить новое значение к множеству, которое пока отсутствует в словаре.

Поэтому мы используем иной подход. Метод diet. setdefault возвращает ссылку на элемент словаря с заданным ключом (первый аргумент). Если такой элемент отсутствует, метод создает новый элемент с указанным ключом и устанавливает в качестве значения либо None, либо указанное значение по умолчанию (второй аргумент).
Навигация: 1 2 3
 
 
© Copyright