Каким будет результат выполнения кода ?
Anonymous Quiz
7%
{ 'a': 1, 'b': 1, 'c': 1 }
19%
{ 'a': 1, 'b': 48, 'c': 0 }
43%
{ 'a': 1, 'b': 58, 'c': 0 }
17%
Error
14%
Узнать ответ
Метод get() у словарей и его «дефолтный» результат
Сразу же рассмотрим пример с картинки.
Метод
Если же мы напишем
Сразу же рассмотрим пример с картинки.
Метод
get() возвращает значение по ключу если такой ключ присутствует в словаре name_for_userid , иначе, метод возвращает дефолтное значение "Уважаемый".Если же мы напишем
name_for_userid.get(5454) без указания «дефолтного» значения, то функция вернет None. Довольно удобно и практично.Что напечатает код ?
Anonymous Quiz
24%
Python7
2%
ab
13%
Python 7
39%
Pythonb
20%
Error
3%
Узнать ответ
Какой элемент удаляет метод списка POP , если не указан аргумент ?
Anonymous Quiz
15%
Первый
60%
Последний
8%
Случайный
12%
Аргумент обязателен
5%
Узнать ответ
Как отобразить код функции в виде строки ?
Предположим, вы работаете над большим проектом. В какой-то момент времени потребовалось использовать определенную функцию. Искать ее по всем скриптам – дело долгое и муторное. Если используется IDE, то там можно просмотреть код функции достаточно просто (в пайчарме, например, при нажатом Ctrl достаточно нажать кнопку мыши по названию объекта). В питоне увидеть код функции очень просто: для этого используют модуль inspect.
Предположим, вы работаете над большим проектом. В какой-то момент времени потребовалось использовать определенную функцию. Искать ее по всем скриптам – дело долгое и муторное. Если используется IDE, то там можно просмотреть код функции достаточно просто (в пайчарме, например, при нажатом Ctrl достаточно нажать кнопку мыши по названию объекта). В питоне увидеть код функции очень просто: для этого используют модуль inspect.
Как создаются и для чего нужны статические методы?
Методы классов в Питоне делятся на 3 типа:
1) Методы экземпляров (наиболее часто используемые, в качестве первого аргумента всегда принимают self)
2) Классовые методы (здесь первым параметром передается cls. Привязаны к данному классу, а не к его экземплярам. Способны менять состояние класса, но не его экземпляров)
3) Статические методы (не требуют наличия особого первого аргумента. Фактически, не принадлежат никакому классу, а представляют собой независимую функцию, которую мы по причинам бизнес-логики решили включить в класс).
Для создания статического метода используют декоратор
Методы классов в Питоне делятся на 3 типа:
1) Методы экземпляров (наиболее часто используемые, в качестве первого аргумента всегда принимают self)
2) Классовые методы (здесь первым параметром передается cls. Привязаны к данному классу, а не к его экземплярам. Способны менять состояние класса, но не его экземпляров)
3) Статические методы (не требуют наличия особого первого аргумента. Фактически, не принадлежат никакому классу, а представляют собой независимую функцию, которую мы по причинам бизнес-логики решили включить в класс).
Для создания статического метода используют декоратор
@staticmethod .3 встроенные в Python функции
На сегодня в Python встроено около 70 функций. Опишем следующие три:
1) Функция max()
Возвращает максимальное значение итерируемого объекта (списка, словаря, кортежа) или переданных аргументов (если их несколько). Возможно использование дополнительных параметров: key (функция предварительной обработки значений объекта), default (значение по умолчанию, если передан пустой объект).
2) Функция len()
Определяет количество элементов в объекте (строке, списке, словаре, множестве и т.д.)
3) Функция id()
Позволяет узнать уникальный идентификатор любого объекта в рамках конкретной исполняемой среды. При новом запуске скрипта значения идентификаторов поменяются.
На сегодня в Python встроено около 70 функций. Опишем следующие три:
1) Функция max()
Возвращает максимальное значение итерируемого объекта (списка, словаря, кортежа) или переданных аргументов (если их несколько). Возможно использование дополнительных параметров: key (функция предварительной обработки значений объекта), default (значение по умолчанию, если передан пустой объект).
2) Функция len()
Определяет количество элементов в объекте (строке, списке, словаре, множестве и т.д.)
3) Функция id()
Позволяет узнать уникальный идентификатор любого объекта в рамках конкретной исполняемой среды. При новом запуске скрипта значения идентификаторов поменяются.
Виды параметров функций
Несмотря на кажущуюся простоту в понимании типов параметров функций при их трактовании у начинающих разработчиков часто возникают трудности.
Если коротко, то различают 4 вида параметров:
– позиционные
– строго позиционные ( Знак косой черты свидетельствует о том, что все параметры до нее обязаны быть строго позиционными )
– ключевые
– строго ключевые ( Чтобы передать в функцию строго ключевые аргументы, их нужно предварить инструкцией * )
Замечание: позиционные аргументы должны всегда предшествовать ключевым, иначе в работе кода возникнет ошибка
Несмотря на кажущуюся простоту в понимании типов параметров функций при их трактовании у начинающих разработчиков часто возникают трудности.
Если коротко, то различают 4 вида параметров:
– позиционные
– строго позиционные ( Знак косой черты свидетельствует о том, что все параметры до нее обязаны быть строго позиционными )
– ключевые
– строго ключевые ( Чтобы передать в функцию строго ключевые аргументы, их нужно предварить инструкцией * )
Замечание: позиционные аргументы должны всегда предшествовать ключевым, иначе в работе кода возникнет ошибка
Способы импортирования функции из модуля
Вариантов импортирования функции из модуля или пакета в питоне представлено не мало. Опишем самые распространенные и понятные большинству. Более замудренные и редкие способы применяются теми, кто понимает, зачем ему это надо. На практике такое встречается редко и используется экспертами для специфичных задач.
Рассмотрим несколько способов на примере импортирования функции
Вариантов импортирования функции из модуля или пакета в питоне представлено не мало. Опишем самые распространенные и понятные большинству. Более замудренные и редкие способы применяются теми, кто понимает, зачем ему это надо. На практике такое встречается редко и используется экспертами для специфичных задач.
Рассмотрим несколько способов на примере импортирования функции
sqrt из модуля math .Что выведет следующий код ?
Anonymous Quiz
22%
[1]
31%
[1, 1]
24%
[1, 1, 1]
9%
[1, 1, 1, 1]
12%
Error
Открываем текстовый файл без сторонних библиотек
Существует 2 основных варианта открытия текстового документа :
1) При помощи функции
2) С использованием контекстного менеджера
Приведем пример открытия условного файла article.txt, находящегося в текущей папке проекта. Важно помнить о том, что необходимо указать кодировку, чтобы вместо понятного текста вы не получили набор непонятных символов.
Существует 2 основных варианта открытия текстового документа :
1) При помощи функции
open() – дополнительно требуется закрыть файл после работы с ним, иначе он останется в памяти.2) С использованием контекстного менеджера
with – закрывать документ не требуется, это произойдет автоматически. Приведем пример открытия условного файла article.txt, находящегося в текущей папке проекта. Важно помнить о том, что необходимо указать кодировку, чтобы вместо понятного текста вы не получили набор непонятных символов.
Использование функции print для записи файлов
Функция
Функция
print() позволяет не только выводить информацию в терминал, но и записывать ее в файл. Для этого применяется ключевой аргумент file. Основное удобство ( по сравнению с функцией write() ) заключается в том, что перенос на новую строку осуществляется автоматически.Библиотека Pillow
Библиотека Pillow позволяет обрабатывать изображения. Работает со всеми популярными форматами jpeg, png.
Пакет позволяет осуществлять следующие операции:
1. Получать полную информацию о файле (размер, гистограмму цветов, exif-данные, цветовой режим)
2. Изменять картинку (обрезать, менять размер)
3. Накладывать фильтры (размытие, усиление резкости, сглаживание краев)
4. Наносить текст (любого цвета в любое место)
5. Сохранять новые файлы в нужную директорию
Основное удобство заключается в том, что изображения с легкостью обрабатываются пакетно, что позволяет привести их к одному виду, размеру, понятному наименованию. Вручную такие операции займут в сотни и тысячи раз больше времени.
Документация
Библиотека Pillow позволяет обрабатывать изображения. Работает со всеми популярными форматами jpeg, png.
Пакет позволяет осуществлять следующие операции:
1. Получать полную информацию о файле (размер, гистограмму цветов, exif-данные, цветовой режим)
2. Изменять картинку (обрезать, менять размер)
3. Накладывать фильтры (размытие, усиление резкости, сглаживание краев)
4. Наносить текст (любого цвета в любое место)
5. Сохранять новые файлы в нужную директорию
Основное удобство заключается в том, что изображения с легкостью обрабатываются пакетно, что позволяет привести их к одному виду, размеру, понятному наименованию. Вручную такие операции займут в сотни и тысячи раз больше времени.
Документация
Методы keys (), items (), values ()
Методы
1. keys() – возвращает список ключей в исходном порядке, все элементы уникальны, ведут себя как множество: могут объединяться, пересекаться и тд, являются итерабельными и их нельзя менять напрямую и вызывать по индексу.
2. values() – контейнер со значениями словаря, в котором элементы могут повторяться (т.е. не ведет себя как множество). В остальном, свойства аналогичны методу keys().
3. items() – список элементов словаря в виде кортежей, где первым идет ключ, а вторым объектом – значение. Если значения словаря неизменямые, то контейнер items() будет обладать свойствами сета. Остальные особенности совпадают с keys()
На примере рассмотрим метод
Методы
keys(), items(), values() еще называют объектами просмотра словаря. Они позволяют просматривать все элементы словаря и имеют некоторые особенности:1. keys() – возвращает список ключей в исходном порядке, все элементы уникальны, ведут себя как множество: могут объединяться, пересекаться и тд, являются итерабельными и их нельзя менять напрямую и вызывать по индексу.
2. values() – контейнер со значениями словаря, в котором элементы могут повторяться (т.е. не ведет себя как множество). В остальном, свойства аналогичны методу keys().
3. items() – список элементов словаря в виде кортежей, где первым идет ключ, а вторым объектом – значение. Если значения словаря неизменямые, то контейнер items() будет обладать свойствами сета. Остальные особенности совпадают с keys()
На примере рассмотрим метод
keys() .