📌 Оператор “return”
• Оператор return используется для возврата[5] из функции, т.е. для прекращения её работы и выхода из неё. При этом можно также вернуть некоторое значение из функции.
Пример (код на картинке).
📕 Документация
#урок
• Оператор return используется для возврата[5] из функции, т.е. для прекращения её работы и выхода из неё. При этом можно также вернуть некоторое значение из функции.
Пример (код на картинке).
📕 Документация
#урок
🔥8👍4
📌 Строки документации
• Python имеет остроумную особенность, называемую строками документации, обычно обозначаемую сокращённо docstrings. Это очень важный инструмент, которым вы обязательно должны пользоваться, поскольку он помогает лучше документировать программу и облегчает её понимание. Поразительно, но строку документации можно получить, например, из функции, даже во время выполнения программы!
Пример (код на картинке).
📕 Документация
#урок
• Python имеет остроумную особенность, называемую строками документации, обычно обозначаемую сокращённо docstrings. Это очень важный инструмент, которым вы обязательно должны пользоваться, поскольку он помогает лучше документировать программу и облегчает её понимание. Поразительно, но строку документации можно получить, например, из функции, даже во время выполнения программы!
Пример (код на картинке).
📕 Документация
#урок
👍7❤4
📌 Ключевые аргументы
• Если имеется некоторая функция с большим числом параметров, и при её вызове требуется указать только некоторые из них, значения этих параметров могут задаваться по их имени – это называется ключевые параметры. В этом случае для передачи аргументов функции используется имя (ключ) вместо позиции (как было до сих пор).
• Есть два преимущества такого подхода: во-первых, использование функции становится легче, поскольку нет необходимости отслеживать порядок аргументов; во-вторых, можно задавать значения только некоторым избранным аргументам, при условии, что остальные параметры имеют значения аргумента по умолчанию.
Пример (код на картинке).
📕 Документация
#урок
• Если имеется некоторая функция с большим числом параметров, и при её вызове требуется указать только некоторые из них, значения этих параметров могут задаваться по их имени – это называется ключевые параметры. В этом случае для передачи аргументов функции используется имя (ключ) вместо позиции (как было до сих пор).
• Есть два преимущества такого подхода: во-первых, использование функции становится легче, поскольку нет необходимости отслеживать порядок аргументов; во-вторых, можно задавать значения только некоторым избранным аргументам, при условии, что остальные параметры имеют значения аргумента по умолчанию.
Пример (код на картинке).
📕 Документация
#урок
❤6👍5
📌 Булевы значения
• Булевы значения в Python это две константы True и False.
• В Python истинными и ложными значениями считаются не только True и False.
истинное значение:
- любое ненулевое число
- любая непустая строка
- любой непустой объект
ложное значение:
- 0
- None
- пустая строка
- пустой объект
• Остальные истинные и ложные значения, как правило, логически следуют из условия.
Для проверки булевого значения объекта, можно воспользоваться bool: (код на картинке).
📕 Документация
#урок
• Булевы значения в Python это две константы True и False.
• В Python истинными и ложными значениями считаются не только True и False.
истинное значение:
- любое ненулевое число
- любая непустая строка
- любой непустой объект
ложное значение:
- 0
- None
- пустая строка
- пустой объект
• Остальные истинные и ложные значения, как правило, логически следуют из условия.
Для проверки булевого значения объекта, можно воспользоваться bool: (код на картинке).
📕 Документация
#урок
❤8👍6
📌 Использование списков, как очередей.
• Очередь – это другая структура данных, организованная по принципу “Первым пришёл, первым ушёл”(FIFO). В Питоне нет встроенного класса очереди, но вы можете также использовать списки Питона: для добавления элемента используйте append, а для получения последнего – метод pop(0)(метод pop удаляет элемент).
Пример (код на картинке).
📕 Документация
#урок
• Очередь – это другая структура данных, организованная по принципу “Первым пришёл, первым ушёл”(FIFO). В Питоне нет встроенного класса очереди, но вы можете также использовать списки Питона: для добавления элемента используйте append, а для получения последнего – метод pop(0)(метод pop удаляет элемент).
Пример (код на картинке).
📕 Документация
#урок
❤9🔥5👌1
📌 Выражения в списках.
• В Питоне есть альтернативный способ создания списков по определённым правилам, позволяющий избегать использования функций filter(), map(), reduce(): использование выражений внутри списков. Такие выражения имеют следующий формат: заголовок цикла for, задающий ограничения при создании списков, за этим циклом может(необязательно) следовать некоторое количество условий if и циклов for, по которым, собственно, и создаётся результативный список.
Приведём пример таких выражений (код на картинке).
📕 Документация
#урок
• В Питоне есть альтернативный способ создания списков по определённым правилам, позволяющий избегать использования функций filter(), map(), reduce(): использование выражений внутри списков. Такие выражения имеют следующий формат: заголовок цикла for, задающий ограничения при создании списков, за этим циклом может(необязательно) следовать некоторое количество условий if и циклов for, по которым, собственно, и создаётся результативный список.
Приведём пример таких выражений (код на картинке).
📕 Документация
#урок
❤9🔥4
📌 Оператор del.
• Данный оператор полезен для удаления объектов из памяти, когда они не нужны(после удаления объекта или переменной, вы не сможете больше к ним обращаться). Кроме того, оператор del может использоваться для удаления элемента из списка по его индексу или по промежутку:
Пример (код на картинке).
📕 Документация
#урок
• Данный оператор полезен для удаления объектов из памяти, когда они не нужны(после удаления объекта или переменной, вы не сможете больше к ним обращаться). Кроме того, оператор del может использоваться для удаления элемента из списка по его индексу или по промежутку:
Пример (код на картинке).
📕 Документация
#урок
❤8🔥2👎1
📌 Константные списки.
• Мы до сих пор рассматривали списки, т.е. последовательности, элементы которых могут быть доступны для изменения по отдельности. Другим типом последовательности является константный список(tuple). Такой список в теле программы обозначается списком элементов через запятую, может содержать в себе элементы различных типов, но изменить их через индекс не удастся(см. строки).
• Константные списки могут содержать в себе в качестве элементов другие последовательности. Для списков константного типа определены операции присваивания, склеивания +, индексации(только чтение). Использовать такие списки удобно при доступе к базам данных(одинаковые поля) и системам координат.
Рассмотрим пример константных списков (код на картинке).
📕 Документация
#урок
• Мы до сих пор рассматривали списки, т.е. последовательности, элементы которых могут быть доступны для изменения по отдельности. Другим типом последовательности является константный список(tuple). Такой список в теле программы обозначается списком элементов через запятую, может содержать в себе элементы различных типов, но изменить их через индекс не удастся(см. строки).
• Константные списки могут содержать в себе в качестве элементов другие последовательности. Для списков константного типа определены операции присваивания, склеивания +, индексации(только чтение). Использовать такие списки удобно при доступе к базам данных(одинаковые поля) и системам координат.
Рассмотрим пример константных списков (код на картинке).
📕 Документация
#урок
❤6🔥4
📌 Использование списков, как стеков.
• Стек – это структура данных, организованнная по принципу “Последним пришёл, первым ушёл”(LIFO). В Питоне нет встроенного класса стека, но вы можете использовать списки Питона так, как они были бы стеками: для добавления элемента используйте append, а для получения последнего – метод pop() без аргумента(метод pop удаляет элемент).
Например (код на картинке).
📕 Документация
#урок
• Стек – это структура данных, организованнная по принципу “Последним пришёл, первым ушёл”(LIFO). В Питоне нет встроенного класса стека, но вы можете использовать списки Питона так, как они были бы стеками: для добавления элемента используйте append, а для получения последнего – метод pop() без аргумента(метод pop удаляет элемент).
Например (код на картинке).
📕 Документация
#урок
❤7👍5
📌 Сравнение списков.
• Сравнение списков несколько отличается от сравнения простых числовых значений. Во-первых, списки должны быть одинакового типа. Во-вторых сравнение идёт в лексикографическом порядке, т.е оцениваются вначале первые элементы последовательностей, если они не равны, то далее возвращается результат(>;<;!=), иначе оценивается следующая пара элементов.
• Последовательности будут равны только в том случае, если все их элементы будут соответственно равны. Кроме этого, более длинная последовательность будет всегда больше более короткой.Строки сравниваются, учитывая порядок символов в строках в таблице ASCII.
Приведём примеры сравнения последовательностей (код на картинке).
📕 Документация
#урок
• Сравнение списков несколько отличается от сравнения простых числовых значений. Во-первых, списки должны быть одинакового типа. Во-вторых сравнение идёт в лексикографическом порядке, т.е оцениваются вначале первые элементы последовательностей, если они не равны, то далее возвращается результат(>;<;!=), иначе оценивается следующая пара элементов.
• Последовательности будут равны только в том случае, если все их элементы будут соответственно равны. Кроме этого, более длинная последовательность будет всегда больше более короткой.Строки сравниваются, учитывая порядок символов в строках в таблице ASCII.
Приведём примеры сравнения последовательностей (код на картинке).
📕 Документация
#урок
❤7👍3👎1
📌 Словари.
• Во всех рассмотренных последовательностях обращаться к отдельным элементам нужно было по индексу. Иную форму организации последовательности представляют словари. В словарях для доступа к отдельным его элементам используются ключевые индексы, подобные индексам в базах данных. Индексом может быть любой неизменяемый объект, такой как строка, число, константный список(такой список может содержать только строки, числа или другие константные списки).
• В тексте программы словари задаются фигурными скобками {} с элементами словаря. Каждому элементу словаря должен соответствовать определённый индекс, который отделяется от элемента двоеточием(“индекс:значение”). К элементам словаря можно обращаться по соответствующим им индексам. При обращении к несуществующему индексу возникает ошибка.
Вот простой пример использования словаря (код на картинке).
📕 Документация
#урок
• Во всех рассмотренных последовательностях обращаться к отдельным элементам нужно было по индексу. Иную форму организации последовательности представляют словари. В словарях для доступа к отдельным его элементам используются ключевые индексы, подобные индексам в базах данных. Индексом может быть любой неизменяемый объект, такой как строка, число, константный список(такой список может содержать только строки, числа или другие константные списки).
• В тексте программы словари задаются фигурными скобками {} с элементами словаря. Каждому элементу словаря должен соответствовать определённый индекс, который отделяется от элемента двоеточием(“индекс:значение”). К элементам словаря можно обращаться по соответствующим им индексам. При обращении к несуществующему индексу возникает ошибка.
Вот простой пример использования словаря (код на картинке).
📕 Документация
#урок
👍6❤5
📌 Библиотека Python для создания PDF-документов.
• Это библиотека для создания PDF-документов на Python. Представляет собой форк неподдерживаемого модуля PYFPDF.
Минимальный пример создания PDF-документа (код на картинке).
📕 Документация
#урок
• Это библиотека для создания PDF-документов на Python. Представляет собой форк неподдерживаемого модуля PYFPDF.
Минимальный пример создания PDF-документа (код на картинке).
📕 Документация
#урок
❤7😁3
📌 Модуль string в Python, текстовые константы и шаблоны.
• Многие функции, ранее реализованные в модуле string, были перенесены в методы объектов str. Модуль string сохраняет несколько полезных констант и классов для работы с объектами str.
• Шаблоны строк предназначены в качестве альтернативы встроенному синтаксису замены переменных при форматировании строк. При интерполяции строки по шаблону string.Template переменные идентифицируются с помощью префикса $, например, $var. В качестве альтернативы, если необходимо выделить их из окружающего текста, они также могут быть обернуты фигурными скобками, например ${var}.
📕 Документация
#урок
• Многие функции, ранее реализованные в модуле string, были перенесены в методы объектов str. Модуль string сохраняет несколько полезных констант и классов для работы с объектами str.
• Шаблоны строк предназначены в качестве альтернативы встроенному синтаксису замены переменных при форматировании строк. При интерполяции строки по шаблону string.Template переменные идентифицируются с помощью префикса $, например, $var. В качестве альтернативы, если необходимо выделить их из окружающего текста, они также могут быть обернуты фигурными скобками, например ${var}.
📕 Документация
#урок
❤4👍3🔥1
📌 Модуль pyftpdlib в Python, FTP-сервер.
• Модуль pyftpdlib реализует серверную часть протокола FTP, как определено в RFC-959. По своей природе pyftpdlib является асинхронным. Это означает, что он использует один процесс/поток для обработки нескольких клиентских подключений и передачи файлов. Вот почему он такой быстрый, легкий и масштабируемый.
• Изменить асинхронную модель легко. Для этого нужно вместо класса FTPServer использовать классы ThreadedFTPServer или MultiprocessFTPServer. На практике это означает, что можно не бояться длительных блокирующих операции, а следовательно использовать FTP-сервер на медленных файловых системах.
Так как модуль pyftpdlib не входит в стандартную библиотеку Python, его необходимо установить отдельно. Сделать это можно с помощью менеджера пакетов pip (код на картинке).
📕 Документация
#урок
• Модуль pyftpdlib реализует серверную часть протокола FTP, как определено в RFC-959. По своей природе pyftpdlib является асинхронным. Это означает, что он использует один процесс/поток для обработки нескольких клиентских подключений и передачи файлов. Вот почему он такой быстрый, легкий и масштабируемый.
• Изменить асинхронную модель легко. Для этого нужно вместо класса FTPServer использовать классы ThreadedFTPServer или MultiprocessFTPServer. На практике это означает, что можно не бояться длительных блокирующих операции, а следовательно использовать FTP-сервер на медленных файловых системах.
Так как модуль pyftpdlib не входит в стандартную библиотеку Python, его необходимо установить отдельно. Сделать это можно с помощью менеджера пакетов pip (код на картинке).
📕 Документация
#урок
❤5🔥5