👍5
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
Множество в python - "контейнер", содержащий не повторяющиеся элементы в случайном порядке.
Он уберет все повторы, и мы получим (1, 2, 3, 5)
Далее len вычислить длину —> кол-во элементов —> 4.
Ответ: 4
Он уберет все повторы, и мы получим (1, 2, 3, 5)
Далее len вычислить длину —> кол-во элементов —> 4.
Ответ: 4
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
В функцию поступает число.
Нужно вернуть список всех делителей этого числа, кроме самого числа и единицы.
Если число простое (ни на что, кроме 1 и самого себя не делится), то вернуть текст
*число* is prime
Ответы в комменты, погнали!p.s. потом будет разбор задачи😎
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
https://www.youtube.com/watch?v=e0AHYbKeeT8&ab_channel=Shcoder
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
ВОСПРОИЗВЕСТИ ВИДЕО в GUI TKINTER на PYTHON | Video Player
В этом видео мы посмотрим, как можно проиграть видео MP4 на Python tkinter. Мы используем для этого Canvas и библиотеку cv2.
Подписывайся на наш телеграм канал!
https://t.me/pythonhub001
И на телеграмм чат :)
https://t.me/pythonhub_chat
Полезные ссылки:…
Подписывайся на наш телеграм канал!
https://t.me/pythonhub001
И на телеграмм чат :)
https://t.me/pythonhub_chat
Полезные ссылки:…
👍3
👍2
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
Есть два списка с одинаковыми элементами.
Вызов метода .sort() возвращает None, т.к. сортирует сам исходный список. —> в a будет None
Вызов sorted() вернет отсортированный список —> в b будет [1,2,3,4]
Сработает elif, т.к. None != [1,2,3,4] —> не равны.
Ответ: False
Вызов метода .sort() возвращает None, т.к. сортирует сам исходный список. —> в a будет None
Вызов sorted() вернет отсортированный список —> в b будет [1,2,3,4]
Сработает elif, т.к. None != [1,2,3,4] —> не равны.
Ответ: False
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Python Hub - сборище Питонистов
Было предложено решение:
p.s. в range можно не делать num-1, ведь он и так не включает последний элемент
Далее было предложено еще решение, с уменьшением количества пробегаемых элементов в 2 раза, так как например:
У нас есть число 100. Мы не сможем умножить число большее 50 на 2 или больше, чтобы вышло 100.
Тогда тот же алгоритм примерно выглядел бы так:
def number(num):
numm=[i for i in range(2,num-1) if num%i==0]
if len(numm)==0:
print(f'{num} is prime')
else:
print(numm)
И оно работает. Суть решения в переборе всех значений от 2 до самого числа. Далее мы пытаемся поделить наше число на каждое из значений. Те значения, которые поделились без остатка заносим в список. Ну а далее просто проверяем, что список пустой или нет.p.s. в range можно не делать num-1, ведь он и так не включает последний элемент
Далее было предложено еще решение, с уменьшением количества пробегаемых элементов в 2 раза, так как например:
У нас есть число 100. Мы не сможем умножить число большее 50 на 2 или больше, чтобы вышло 100.
Тогда тот же алгоритм примерно выглядел бы так:
def number(num):А вот так бы это выглядело, если бы мы писали, как для новичков.
numm=[i for i in range(2,num//2+1) if num%i==0]
if len(numm)==0:
print(f'{num} is prime')
else:
print(numm)
👍4
Хеш-таблица - это структура данных, которая используется для эффективного хранения и поиска информации. Она основана на идее хеширования, где каждый элемент имеет уникальный хеш-код, который используется для быстрого доступа к данным.
Хеш-таблица состоит из массива элементов, каждый из которых имеет свой уникальный хеш-код. Хеш-код вычисляется из ключа элемента (например, строка или число) с помощью специального алгоритма хеширования. Затем этот хеш-код используется в качестве индекса массива, где находится соответствующий элемент.
Когда требуется найти элемент в хеш-таблице по ключу, алгоритм хеширования вычисляет хеш-код ключа, который затем используется для поиска элемента в массиве. Если элемент найден, то возвращается его значение, иначе возвращается сообщение об ошибке.
Одним из главных преимуществ хеш-таблицы является ее эффективность. Благодаря уникальному хеш-коду каждого элемента, поиск элемента в массиве может быть осуществлен за постоянное время O(1), что делает хеш-таблицу одной из самых быстрых структур данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
👍2
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
Лямбда-выражения в языке Python представляют небольшие анонимные функции, которые определяются с помощью оператора lambda.
В данном случае у нас есть лямбда-фукция a, которая принимает в себя значение c и возвращает результат умножения числа c на само себя..
Таким образом, передав в функцию а тройку, получим 9.
p.s. с = 2 на первой строке вообще никак не влияет на выражение.
ответ: 9
В данном случае у нас есть лямбда-фукция a, которая принимает в себя значение c и возвращает результат умножения числа c на само себя..
Таким образом, передав в функцию а тройку, получим 9.
p.s. с = 2 на первой строке вообще никак не влияет на выражение.
ответ: 9
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Генераторы - это функции, которые возвращают итерируемый объект, который вы можете перебирать по одному элементу за раз. Они создаются с помощью ключевого слова "yield" вместо "return". Когда вы вызываете генератор, он не выполняет свой код сразу, вместо этого он возвращает объект-генератор, который позволяет вам перебирать элементы один за другим. Каждый раз, когда вы вызываете метод "next()" на объекте-генераторе, он продолжает выполнение кода генератора до следующего оператора "yield", возвращая значение, указанное после него. Генераторы особенно полезны, когда вы работаете с большими наборами данных, так как они позволяют вам работать с данными по мере их генерации, а не ждать, пока все данные будут сгенерированы.
Вот пример:
>>> def starmaker(n):
... while n > 0:
... yield '*'
... n -= 1
...
>>> type(starmaker)
>class 'function'>
>>> s = starmaker(3)
>>> type(s)
>class 'generator'>
>>> next(s)
'*'
>>> next(s)
'*'
>>> next(s)
'*'
>>> next(s)
Traceback (most recent call last):
File ">stdin>", line 1, in >module>
StopIterationPlease open Telegram to view this post
VIEW IN TELEGRAM
👍2
Что выдаст код выше?
Anonymous Quiz
0%
1 2 3 4 5
10%
1
10%
1 2 3 4
30%
1 2 3
48%
1 2
3%
Error
0%
Не знаю
👍6🍌1
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
У нас есть цикл for, который перебирает значения от 1 до 4 включая. ( 5 не включается )
Внутри цикла for стоит цикл while, который срабатывает только, когда i < 3. В этот момент значение i выводится и цикл while прерывается —> переходим к циклу for.
Не смотря на то, что for прокрутится 4 раза, цикл while сработает только 2 из них —> выведет числа 1 2
Ответ: 1 2
Внутри цикла for стоит цикл while, который срабатывает только, когда i < 3. В этот момент значение i выводится и цикл while прерывается —> переходим к циклу for.
Не смотря на то, что for прокрутится 4 раза, цикл while сработает только 2 из них —> выведет числа 1 2
Ответ: 1 2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Декоратор - это функция, которая принимает функцию в качестве аргумента и возвращает другую функцию. В основном, декораторы используются для добавления дополнительного поведения к функциям или классам. Декораторы могут быть использованы для регистрации функций, логирования, кэширования и многих других задач.
Для использования декоратора в Python, вы можете определить функцию, которая будет принимать функцию в качестве аргумента и возвращать другую функцию, которая будет выполнять дополнительный код. Затем вы можете применить эту функцию к вашей целевой функции. Вот пример:
def my_decorator(func):
def wrapper():
print("Before function is called.")
func()
print("After function is called.")
return wrapper
@my_decorator
def say_hello():
print("Hello!")
say_hello()
В этом примере мы определили декоратор
my_decorator, который принимает функцию в качестве аргумента и возвращает другую функцию wrapper, которая будет выполнять дополнительный код до и после вызова целевой функции. Затем мы применяем декоратор к функции say_hello с помощью символа @. При вызове функции say_hello, будет вызвана функция wrapper, которая выполнит дополнительный код.Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
👍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