👍4
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
Инструкция raise позволяет программисту принудительно вызвать одно исключение в любое время и в любом месте кода.
Мы самостоятельно вызываем ошибку.
Мы самостоятельно вызываем ошибку.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
https://www.youtube.com/watch?v=oWZmy4EO-vs&ab_channel=Shcoder
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
ПАРСИМ НОВОСТИ на PYTHON | Requests | BeautifulSoup | Хабр
В этом видео попробуем спарить новости с сайта habr, используя язык программирования python и библиотеки bs4 и requests.
Подписывайся на наш телеграм канал!
https://t.me/pythonhub001
И на телеграмм чат :)
https://t.me/pythonhub_chat
Полезные ссылки:
…
Подписывайся на наш телеграм канал!
https://t.me/pythonhub001
И на телеграмм чат :)
https://t.me/pythonhub_chat
Полезные ссылки:
…
👍3
Что работает быстрее?
Anonymous Quiz
34%
a = []
21%
a = list()
13%
Error :)
21%
Равносильно
11%
Не знаю
👍2
Python Hub - сборище Питонистов
Что работает быстрее?
Разбор 👨💻
[] и {} — это часть синтаксиса. Списки и словари, созданные этим методом, инициализируются в байт-коде сразу, тогда как методы list() и dict() требуют поиска в таблице методов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
NamedTuple - это подтип кортежа, который позволяет объявлять собственные именованные типы, которые могут использоваться в качестве структуры данных. Он предоставляет возможность определить тип данных с помощью именованных полей. Каждое поле имеет свой собственный тип данных. Это может быть полезно в случаях, когда вам нужно создать объекты с определенными свойствами.
К примеру, если вы создаете объекты, представляющие собой записи в базе данных, вы можете использовать NamedTuple, чтобы создать тип данных, содержащий поля, соответствующие полям в таблице.
from collections import namedtupleИли например:
Person = namedtuple('Person', ['name', 'age'])
person1 = Person(name='John', age=30)
person2 = Person(name='Jane', age=25)
print(person1.name) # John
print(person2.age) # 25
from collections import namedtuple
Person = namedtuple('Person', 'name age')
person1 = Person('John', 30)
person2 = Person(name='Jane', age=25)
print(person1.name) # John
print(person2.age) # 25
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
👍3
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
Именованные кортежи ( namedtuple ) — это подкласс кортежей в Python. У них те же функции, что и у обычных, но их значения можно получать как с помощью имени (через точку, например, . name ), так и с помощью индекса (например [0] ).
Мы создали кортеж obj, элементы которого позже достали через точку (.), а не индекс.
В param1 был текст "2", в param2 - "3".
Получим 23.
Мы создали кортеж obj, элементы которого позже достали через точку (.), а не индекс.
В param1 был текст "2", в param2 - "3".
Получим 23.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Одной из главных функций Collections Counter является подсчет элементов в коллекции. Для этого необходимо импортировать модуль collections и создать объект Counter с передачей коллекции в качестве аргумента. В результате выполнения функции мы получим словарь, где ключами будут элементы коллекции, а значениями — их количество. Рассмотрим пример:
from collections import Counter
lst = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted_elements = Counter(lst)
print(counted_elements)
В результате выполнения этого кода мы получим следующий словарь:
{1: 1, 2: 2, 3: 3, 4: 4}
С помощью Collections Counter мы также можем переопределить элементы коллекции. Для этого необходимо создать объект Counter для исходной коллекции и передать новые значения с помощью метода update(). Рассмотрим пример:
from collections import Counter
lst = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted_elements = Counter(lst)
print(counted_elements)
counted_elements.update({2: 5, 5: 1})
print(counted_elements)
В результате выполнения этого кода мы получим следующий словарь:
{1: 1, 2: 2, 3: 3, 4: 4}
{1: 1, 2: 7, 3: 3, 4: 4, 5: 1}
Collections Counter также позволяет находить n наиболее часто встречающихся элементов в коллекции. Для этого необходимо использовать метод most_common(n), где n — количество наиболее часто встречающихся элементов, которые нужно найти. Рассмотрим пример:
from collections import Counter
lst = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted_elements = Counter(lst)
most_common_elements = counted_elements.most_common(2)
print(most_common_elements)
В результате выполнения этого кода мы получим следующий список:
[(4, 4), (3, 3)]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
👍1🥰1
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
Цикл for будет пробегать по среду слова "July". Изменение переменной а на "August" никак не повлияет на изначально заданное условие цикла.
Срез 1:3 - срез с 1 индекса по 3 (не включая). Получим буквы ul. (индексация же с 0)
Ответ: ul
Срез 1:3 - срез с 1 индекса по 3 (не включая). Получим буквы ul. (индексация же с 0)
Ответ: ul
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3👌1
❤3👍1
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
Целочисленное деление говорит нам о том, сколько переменная b может целиком поместиться в переменной a.
Ответ: 0 (раз)
Ответ: 0 (раз)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
https://www.youtube.com/watch?v=QfMfao1bYuA&t=26s&ab_channel=Shcoder
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
ПЕРЕВОДЧИК бот в TELEGRAM на PYTHON за 5 МИНУТ | AIOGRAM
В этом видео мы напишем простой переводчик, аналог google translate для платформы телеграм. Использовать будем библиотеку aiogram и язык программирования Python.
Подписывайся на наш телеграм канал!
https://t.me/pythonhub001
И на телеграмм чат :)
https:…
Подписывайся на наш телеграм канал!
https://t.me/pythonhub001
И на телеграмм чат :)
https:…
👍4
GIL, или Global Interpreter Lock, является механизмом в CPython, который ограничивает выполнение Python-кода одним потоком в один момент времени. Это означает, что даже если у вас есть несколько потоков в Python-программе, только один поток может выполняться в любой момент времени.
GIL - это блокировка, которая накладывается на интерпретатор Python, чтобы предотвратить одновременное выполнение Python-кода несколькими потоками. Все объекты Python имеют ссылки на них, которые хранятся в глобальном пространстве имен. GIL гарантирует, что только один поток может получить доступ к этому глобальному пространству имен в любой момент времени. Когда поток хочет выполнить Python-код, он должен получить эту блокировку. Если блокировка уже занята другим потоком, поток будет ожидать, пока блокировка не освободится. Когда блокировка освобождается, следующий поток может получить ее и продолжить выполнение Python-кода.
GIL может оказывать негативное влияние на производительность Python-программ. Это связано с тем, что только один поток может выполнять Python-код в любой момент времени. Если у вас есть множество потоков, которые ожидают доступа к GIL, это может привести к значительному снижению производительности вашей программы.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
👍3