Forwarded from Python 🇺🇦
Список імпортів за замовчуванням
Для обмеження імпорту змінних, функцій та класів за замовчуванням можна використовувати список
Таким чином, при імпорті виду з
Для обмеження імпорту змінних, функцій та класів за замовчуванням можна використовувати список
__all__, до якого записуються назви об'єктів, які будуть підключені.Таким чином, при імпорті виду з
module import * з модуля з подібним записом підключаться тільки об'єкти з назвами зі списку __all__.
Тим не менш, у прикладі вище імпортувати функцію foo з такого модуля все ще можна, наприклад, за допомогою запису from module import foo.
#practice // Python 🇺🇦Forwarded from Python 🇺🇦
Зміна форми масиву
Форма масиву – це кількість елементів у кожному вимірі. Змінюючи форму, ти можеш додавати чи видаляти виміри. Це робиться за допомогою функції reshape бібліотеки NumPy. У цьому прикладі одномірний масив з 12 елементами перетворюється на двомірний масив. Якщо ти спробуєш перетворити масив на форму, яка математично неможлива, виникне ValueError.
#practice // Python 🇺🇦
Форма масиву – це кількість елементів у кожному вимірі. Змінюючи форму, ти можеш додавати чи видаляти виміри. Це робиться за допомогою функції reshape бібліотеки NumPy. У цьому прикладі одномірний масив з 12 елементами перетворюється на двомірний масив. Якщо ти спробуєш перетворити масив на форму, яка математично неможлива, виникне ValueError.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Створюємо пакети
Пакет у Python – це, грубо кажучи, папка з іншими папками та модулями. Крім розділення частин проекту, пакети потрібні для формування простору імен, щоб можна працювати з пакетами та модулями через точку, як у прикладі вище.
При імпорті типу
Також примітний файл
#practice // Python 🇺🇦
Пакет у Python – це, грубо кажучи, папка з іншими папками та модулями. Крім розділення частин проекту, пакети потрібні для формування простору імен, щоб можна працювати з пакетами та модулями через точку, як у прикладі вище.
При імпорті типу
from package import * будуть підключені або всі модулі та об'єкти модуля __init__.py, або те, що знаходиться в змінній all в тому ж модулі __init__.py - докладніше про цю змінну було в пості раніше.Також примітний файл
init.py, який раніше був обов'язковим для створення пакетів. З версії Python 3.3 його потреба зникла. Проте його функціональність на цьому не закінчуються.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Forwarded from Python 🇺🇦
Створюємо віртуальне оточення
Віртуальне оточення — це ізольоване середовище, яке має свої локальні інтерпретатори та пакети, незалежні від глобального інтерпретатора та інших оточень.
У стандартній бібліотеці Python третьої версії є пакет venv, який дозволяє створювати віртуальні оточення зручно та швидко. Приклад представлений на зображенні.
Скрипт activate у директорії bin призначений для активації оточення, а команда deactivate у вже активованому оточенні – для виходу з нього.
У разі успішного створення та активації у вас у терміналі має з'явитися назва вашого віртуального оточення у круглих дужках.
#practice // Python 🇺🇦
Віртуальне оточення — це ізольоване середовище, яке має свої локальні інтерпретатори та пакети, незалежні від глобального інтерпретатора та інших оточень.
У стандартній бібліотеці Python третьої версії є пакет venv, який дозволяє створювати віртуальні оточення зручно та швидко. Приклад представлений на зображенні.
Скрипт activate у директорії bin призначений для активації оточення, а команда deactivate у вже активованому оточенні – для виходу з нього.
У разі успішного створення та активації у вас у терміналі має з'явитися назва вашого віртуального оточення у круглих дужках.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Forwarded from Python 🇺🇦
Статичні методи
Відмінність статичних методів від звичайних у тому, що вони прив'язані до класу, а не об'єкту. Тобто, вони можуть бути викликані безпосередньо у класу.
Статичний метод не приймає ні об'єкт (self), ні клас (cls) у аргументах. Тобто, такі методи не можуть модифікувати ні об'єкт, ні сам клас.
Реалізувати статичний метод можна двома способами. Один з них - присвоїти класу новий метод, безпосередньо передавши початковий метод у функцію staticmethod.
Але так робити не прийнято, тому найчастіше staticmethod використовують як декоратор при написанні методів прямо в класі.
#practice // Python 🇺🇦
Відмінність статичних методів від звичайних у тому, що вони прив'язані до класу, а не об'єкту. Тобто, вони можуть бути викликані безпосередньо у класу.
Статичний метод не приймає ні об'єкт (self), ні клас (cls) у аргументах. Тобто, такі методи не можуть модифікувати ні об'єкт, ні сам клас.
Реалізувати статичний метод можна двома способами. Один з них - присвоїти класу новий метод, безпосередньо передавши початковий метод у функцію staticmethod.
Але так робити не прийнято, тому найчастіше staticmethod використовують як декоратор при написанні методів прямо в класі.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
statistics.stdev
Метод
#practice // Python 🇺🇦
Метод
statistics.stdev() обчислює стандартне відхилення вибірки даних. Стандартне відхилення це міра того, наскільки розкидані числа. Велике стандартне відхилення свідчить про те, що дані розкидані. Невелике стандартне відхилення свідчить про те, що дані згруповані близько до середнього значення. Стандартне відхилення виявляється у тих самих одиницях, як і дані.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Друзі, ми створили чат для ком'юніті Python ентузіастів!
Зараз там пусто, але сподіваємося, що з часом нам з вами вдасться налагодити середовище, де кожен зможе задати питання й отримати на нього відповідь.
Якщо у когось є бажання й необхідний рівень знань, щоб стати модератором чату, пишіть нам сюди: @itchannelsbot
Давайте спілкуватися!
Зараз там пусто, але сподіваємося, що з часом нам з вами вдасться налагодити середовище, де кожен зможе задати питання й отримати на нього відповідь.
Якщо у когось є бажання й необхідний рівень знань, щоб стати модератором чату, пишіть нам сюди: @itchannelsbot
Давайте спілкуватися!
Forwarded from Python 🇺🇦
Отримуємо інформацію про пам'ять на диску
З вбудованим модулем
Але за допомогою
Так як всі три значення повертаються в байтах, у прикладі ми їх перевели та вивели у гігабайти для кращої наочності.
#practice // Python 🇺🇦
З вбудованим модулем
shutil багато хто вже, ймовірно, знайомий, але його зазвичай використовують у контексті завдань копіювання, перенесення файлів і папок.Але за допомогою
shutil ми можемо навіть отримати інформацію про пам'ять на жорсткому диску комп'ютера. Метод disk_usage повертає кількість всієї, зайнятої та вільної пам'яті.Так як всі три значення повертаються в байтах, у прикладі ми їх перевели та вивели у гігабайти для кращої наочності.
#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
fnmatch
Метод
#practice // Python 🇺🇦
Метод
fnmatch() перевіряє, чи ім'я файлу відповідає шаблонному рядку. Зверніть увагу, що цей метод нечутливий до регістру. Зазвичай fnmatch() робить порівняння, використовуючи ті самі правила обліку регістру, що і операційна система. Метод fnmatchcase() робить те саме, тільки він чутливий до регістру.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Itertools.groupby
Метод
#practice // Python 🇺🇦
Метод
groupby() в itertools проходить через ітерацію і групує значення на основі певного ключа. Потім він повертає ітератор (потік кортежів). Важливим попереднім кроком є сортування даних по області, що цікавить. Оскільки groupby() перевіряє лише послідовні елементи, відсутність початкового сортування не призведе до угруповання записів так, як ти хочеш.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Поліноміальна регресія
Якщо твої точки даних не підходять для лінійної регресії, використовуй поліноміальну регресію. Поліноміальна регресія використовує взаємозв'язок між змінними x та y, щоб найкращим способом провести лінію через точки даних. Метод
#practice // Python 🇺🇦
Якщо твої точки даних не підходять для лінійної регресії, використовуй поліноміальну регресію. Поліноміальна регресія використовує взаємозв'язок між змінними x та y, щоб найкращим способом провести лінію через точки даних. Метод
numpy.poly1d дає змогу створити поліноміальну модель.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
KDTrees
KD-дерева — це структура даних, яка оптимізована для запитів найближчих сусідів. Наприклад, у наборі точок можна ефективно дізнатися, які точки є найближчими до певної заданої точки. Метод
#practice // Python 🇺🇦
KD-дерева — це структура даних, яка оптимізована для запитів найближчих сусідів. Наприклад, у наборі точок можна ефективно дізнатися, які точки є найближчими до певної заданої точки. Метод
KDTree() повертає об'єкт KDTree. Метод query() повертає відстань до найближчого сусіда та розташування сусідів.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Очищення елементів у послідовності
Вбудований модуль
Іноді виникає необхідність видалення непотрібних об'єктів послідовності. Якраз для цього й використовують
Першим аргументом передається якийсь контейнер, наприклад список. Другим аргументом — логічні значення, що відповідають елементам у послідовності.
Якщо логічне значення дорівнює
#practice // Python 🇺🇦
Вбудований модуль
itertools був створений для роботи з більш складними випадками ітераторів. Плюс модуля в тому, що він швидко працює та оптимізований у плані пам'яті.Іноді виникає необхідність видалення непотрібних об'єктів послідовності. Якраз для цього й використовують
itertools, а саме метод compress.Першим аргументом передається якийсь контейнер, наприклад список. Другим аргументом — логічні значення, що відповідають елементам у послідовності.
Якщо логічне значення дорівнює
True або 1, то елемент зберігається у послідовності, в іншому випадку — видаляється з неї.#practice // Python 🇺🇦
Forwarded from Python 🇺🇦
Створюємо ботів для чату у телеграмі
Друзі, нагадуємо, що ми нещодавно створили чат для Python ентузіастів, де ми спілкуємося, задаємо питання та отримуємо на них відповіді.
Зараз активно займаємося його розвитком, а обов'язковою частиною здорового чату є наявність цікавих ботів.
Один з модераторів чату вчора добавив бота, котрий перетворює повідомлення учасників у цитати. Дайте відповідь на чиєсь повідомлення командою
Якщо у вас є ідеї щодо корисних чи просто цікавих ботів, пропонуйте свої ідеї в чаті з хештегом
Якщо ж ви самі розробили свого бота, вважаєте що він буде корисним й хочете його додати в чат, пишіть з описом свого бота сюди: @itchannelsbot
Друзі, нагадуємо, що ми нещодавно створили чат для Python ентузіастів, де ми спілкуємося, задаємо питання та отримуємо на них відповіді.
Зараз активно займаємося його розвитком, а обов'язковою частиною здорового чату є наявність цікавих ботів.
Один з модераторів чату вчора добавив бота, котрий перетворює повідомлення учасників у цитати. Дайте відповідь на чиєсь повідомлення командою
q або ц — згенерується цитата.Якщо у вас є ідеї щодо корисних чи просто цікавих ботів, пропонуйте свої ідеї в чаті з хештегом
#гобота. Якщо ж ви самі розробили свого бота, вважаєте що він буде корисним й хочете його додати в чат, пишіть з описом свого бота сюди: @itchannelsbot
Forwarded from Python 🇺🇦
SciPy: Dijkstra
Використовуйте метод
#practice // Python 🇺🇦
Використовуйте метод
dijkstra, щоб знайти найкоротший шлях у графі від одного елемента до іншого. Аргумент return predecessors набуває логічного значення True, щоб повернути весь шлях обходу, інакше — False. indexes – індекс елемента для повернення всіх шляхів тільки з цього елемента. limit – максимальна вага шляху.#practice // Python 🇺🇦