Python 🇺🇦


Channel's geo and language: Ukraine, Ukrainian
Category: Technologies


▪️Вивчаємо Python разом.
▪️Високооплачувана професія
▪️Допомагаємо з пошуком роботи
@itchannelsbot - реклама

Related channels  |  Similar channels

Channel's geo and language
Ukraine, Ukrainian
Statistics
Posts filter


def foo():
lst.sort()

lst = list('4572')

foo()
print(lst)

👉 Відповідь

#Python // #practice // Архів книг


Використання змінних

На 2-му уроці курсу "Мова програмування Python" автор показує, як в програмі використовуються змінні, а також розглядає деякі типи даних.

Мова: 🇺🇦

Тривалість: 20 хв

#Python // #lessons // Архів книг


Різниця між __str__ та __repr__

Обидва магічні методи __str__ та __repr__ використовуються для отримання рядкового представлення об'єкта. Давайте розберемося, в чому різниця між ними.

class Complex:
def __init__(self, real, imag):
self.real = real
self.imag = imag

def __repr__(self):
return f'Complex({self.real), {self.imag})'

def __str__(self):
return f'{self.real} + {self.imag}i'

t = Complex(10, 20)

print(t)
# Output: 10 + 20i

print([t, 1, 2])
# Output: [Complex(10, 20), 1, 2]

Функція print() та вбудована функція str() використовують метод __str__ для відображення рядкового представлення об'єкта, а вбудована функція repr() — метод __repr__.

#str #repr // #theory // Python


Метод capitalize() повертає копію вихідного рядка, перетворюючи перший символ рядка на заголовну літеру, проте інші символи в рядку перетворюються на малі літери.

txt = "hello, and welcome to my world."
x = txt.capitalize()
print(x)
# Hello, and welcome to my world.

txt1 = "36 is my age."
x1 = txt1.capitalize()
print(x1)
# 36 is my age.

txt2 = "python is FUN!"
x2 = txt2.capitalize()
print(x2)
# Python is fun!

#capitalize // #practice // Python


Вибір ORM для роботи з БД у веб-застосунках

Вибір "правильного" ORM для конкретного застосунка є надзвичайно важливим кроком — не менш важливим, ніж вибір відповідної бази даних для вашого веб-застосунка.

Ця стаття допоможе краще розібратись, який ORM вам краще підходить в роботі на Python: SQLAlchemy чи Django ORM.


Мова: 🇺🇦

#SQLAlchemy #Django // #theory // Python


Метод math.isqrt() округляє квадратний корінь у меншу сторону до найближчого цілого числа.

import math

print(math.sqrt(10)) # 3.1622776601683795
print(math.sqrt(12)) # 3.4641016151377544
print(math.sqrt(68)) # 8.246211251235321
print(math.sqrt(100)) # 10.0

print(math.isqrt(10)) # 3
print(math.isqrt(12)) # 3
print(math.isqrt(68)) # 8
print(math.isqrt(100)) # 10

Число має бути більшим або рівним 0. В даному прикладі продемонстровано відмінність isqrt від sqrt.

#isqrt #sqrt // #practice // Python


Найкращі книги по Python

Добірка наших останніх публікацій із найбільш вартісними посібниками по мові Python:

🔴Hands-on Machine Learning with Python (🇬🇧, 2022) — вичерпний посібник про машинне та глибоке навчання.

🔴Python Debugging for AI, Machine Learning and Cloud Computing (🇬🇧, 2024) — про дебагінг в розробці ПЗ для штучного інтелекту.

🔴Epic Python Coding (🇬🇧, 2024) — для дітей, які прагнуть розпочати подорож у світ програмування.

🔴Python for Cybersecurity Cookbook (🇬🇧, 2023) — вичерпний посібник із вирішення проблем кібербезпеки.

🔴Mastering Python: 50 Specific Tips for Writing Better Code (🇬🇧, 2023) — один із кращих посібників, щоб стати експертом з Python.

📚 Товариство, які ще знаєте вартісні українські чи англійські матеріали по Python?

#Python // #books // Вакансії IT


>>> a, b = 0
>>> a+=1
>>> b
???

👉 Відповідь

#Python // #practice // Архів книг


Вакансія: Lead Python Engineer

Платформа для оркестрації та процесингу платежів Solidgate шукає на офісну роботу в Києві розробника з досвідом створення комерційного софту на Python (not Django) від 5 років — для роботи над інтеграціями з банками та платіжними провайдерами.

📝 Відкрити анкету

#Python // #jobs // Вакансії IT


Метод rpartition() шукає останню появу вказаного рядка-аргументу s розбиває рядок на кортеж, що містить три елементи.

txt = "I could eat bananas all day, bananas are my favorite fruit"

x = txt.partition("bananas")
print(x)
# ('I could eat bananas all day, ',
# 'bananas',
# ' are my favorite fruit')

Перший елемент містить частину перед вказаним рядком, другий елемент — вказаний рядок, а третій — частину після рядка.

#rpartition // #practice // Python


Створення послідовностей: setitem

Також метод setitem(self, key, value) може викидати винятки TypeError та KeyError.

>>> list_object = [1, 2, 3, 4, 5]
>>> list_object[0] = 78
>>> print(list_object)
... [78, 2, 3, 4, 5]
>>>
>>> dict_object = {"key0": True, "key1": False}
>>> dict_object ["key0"] = False
>>> print(dict_object)
... {"key0": False, "key1": False}

#setitem // #theory // Python


def test_f():
...
print(test_f())

👉 Відповідь

#Python // #practice // Архів книг


Безкоштовний симулятор Arduino і Raspberry Pi

Онлайн-симулятор Wokwi дозволяє протестувати схему до складання, виключаючи ризик для комплектуючих. А ще можна зберігати проекти і ділитися ними, отримуючи фідбек від більш досвідчених однодумців.

Симулятор підтримує широкий спектр комплектуючих: мікроконтролери, датчики, дисплеї та інше.


👉 Спробувати

#Wokwi #Arduino // #news // Python


Якщо необхідно знайти кілька значень, що найбільш часто повторюються, краще скористатися лічильником Counter з бібліотеки collections.

>>> from collections import Counter
>>>
>>> a = ['a', 'b', 'c', 'a', 'b', 'c', 'b', 'b', 'd', 'e', 'a']
>>> cnt = Counter(a)
>>> cnt.most_common(3)
[('b', 4), ('a', 3), ('c', 2)]

Метод Counter.most_common(x) повертає x кортежів, у яких перше значення — елемент, а друге — кількість його повторень.

#Counter // #practice // Python


import numpy as np

>>> np.arange(0, 1, 0.2)
???

👉 Відповідь

#Python // #practice // Архів книг


Перша програма

На першому міні-уроці курсу "Мова програмування Python" автор дає вступну демонстрацію створення простої програми на Python.

Мова: 🇺🇦

Тривалість: 4 хв

#Python // #lessons // Архів книг


⁉️ Вже 3+ роки на одній позиції і боязко щось змінювати?

Багато ІТ фахівців пропускають момент, коли треба рухатися вперед, а потім опиняються в ситуації, коли їх змінюють на молодших, швидших та дешевших.


📉 Якщо ви не оновлювали свої навички останній рік – ринок уже змінився без вас.

📉 Якщо вам не підіймали зарплату – компанія не бачить у вас перспективи.

📉 Якщо робота стала рутиною – ви вже втратили конкурентну перевагу.


Як вирватися з цього замкненого кола? Дамо конкретний план дій на вебінарі «Як залишитися в IT».

⌚️ Коли? 11 лютого о 19:00.

▶️Аналітика ринку: прогнози щодо зарплат, вакансій та найму у 2025 році.
▶️Нові вимоги до ІТ-фахівців: що потрібно, щоб отримати кращу роботу?
▶️Реальні кейси: як європейська магістерська освіта допомагає вирватися вперед.

👉 Реєструйтеся зараз, змагайся за грант на IT магістратуру в Neoversity!


Бібліотека TPOT

Один із прикладів використання TPOT — це автоматичне створення та оптимізація конвеєра машинного навчання. Наведений нижче приклад коду демонструє, як використовувати TPOT для цієї мети:

from tpot import TPOTClassifier
from sklearn.datasets import load_ iris
from sklearn.model_selection import train_test_split

# Завантажуємо набір даних iris
iris = load_iris()

# Розділяємо набір даних на набори для навчання і тестування
X_train, X_test, y_train, _test = train_test_split(iris.data, iris.target, train_size=0.75, test_size=0.25)

# Створюємо класифікатор TPOT
tpot = TPOTClassifier(generations=5, population_size=50, verbosity=2)

# Пристосовуємо класифікатор до навчальних даних
tpot.fit(X_train, y_train)

# Оцінюємо класифікатор за даними тестування
print(tpot.score(X_test, y_test))

# Експортуємо оптимізований конвеєр як сценарій Python
tpot.export('tpot_iris_pipeline.py')

У цьому прикладі ми імпортуємо клас TPOTClassifier та завантажуємо набір даних iris із бібліотеки Scikit-Learn. За допомогою функції train_test_split ми поділяємо набір даних на навчальний та тестовий.

Далі створюється екземпляр класифікатора TPOT із заданими параметрами generations, population_size та verbosity. Класифікатор навчається за допомогою методу fit та оцінюється за допомогою методу score.

❗️Наприкінці оптимізований конвеєр експортується як скрипт Python за допомогою методу export.

#TPOT // #theory // Python


У Python не оптимізується хвостова рекурсія, через що часто виникає RecursionError під час створення рекурсивних алгоритмів. Але за допомогою модуля sys можна переглянути і навіть змінити максимальну глибину рекурсії.

import sys

sys.getrecursionlimit()
# 1000

sys.setrecursionlimit(2000)
sys.getrecursionlimit()
# 2000

Хоча робити це трохи небезпечно, оскільки кожен новий виклик займає багато пам'яті. І взагалі, краще намагатися використати не рекурсію, а звичайні цикли.

#sys // #practice // Python


Створення послідовностей: getitem

getitem(self, key) викликається при зверненні до елемента в послідовності за його ключем (індексом).

>>> list_object = [1, 2, 3, 4, 5]
>>> print(list_object[0])
... 1
>>>
>>> string_object = "hello world"
>>> print(string_object[0:5])
... 'hello'
>>>
>>> dict_object = {"key0": True, "key1": False}
>>> print(dict_object["key0"])
... True

#getitem // #theory // Python

20 last posts shown.