Я создал нового бота для вас! 🤖
Теперь у каждого есть возможность кидать свои вопросы, предложения и мемы, общаясь со мной лично. 🤔💡🤣
Я надеюсь, что это станет удобным способом для всех, чтобы получать ответы на свои вопросы и делиться своими идеями и со мной. 🙌
Лучшие мемы, разборы ваших задач и вопросов будут публиковаться в группе с отметкой автора или анонимно
Ссылка на бота - https://t.me/Python_Hub_bot
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
PythonHub/Programemes [Предложка]
Бот-предложка. Отправь мне вопрос, сообщение или мем.
👍8
Python Hub - сборище Питонистов pinned «🔥 У нас появилась предложка! 🔥 Я создал нового бота для вас! 🤖 Теперь у каждого есть возможность кидать свои вопросы, предложения и мемы, общаясь со мной лично. 🤔💡🤣 Я надеюсь, что это станет удобным способом для всех, чтобы получать ответы на свои вопросы…»
Что выдаст код выше?
Anonymous Quiz
38%
['.фЛ']
10%
['.тфиЛ']
10%
['Лифт.']
11%
Лифт.
16%
Error
15%
Не знаю
👍6
https://www.youtube.com/watch?v=7mMrDIZWfcA&t=11s&ab_channel=Shcoder
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
БЕСПЛАТНЫЙ ХОСТИНГ для TELEGRAM БОТА на PYTHON AIOGRAM | REPLIT
В этом видео мы посмотрим, как можно абсолютно бесплатно выложить на хостинг своего телеграм бота. Мы будем использовать бота для telegram, написанного на библиотеке aiogram. В качестве хостинга возьмем сервис replit.
Подписывайся на наш телеграм канал!…
Подписывайся на наш телеграм канал!…
👍6🐳1
Точная степень двойки
Дано натуральное число N. Выведите слово YES, если число N является точной степенью двойки, или слово NO в противном случае.
Операцией возведения в степень пользоваться нельзя!
❗️усложнением будет являться решение через рекурсию❗️
Решения скидывайте в предложку, а лучше в комменты!
Через время разберем ваши решения!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
При помощи среза мы берем наше слово с конца, перебирая буквы через одну, т.к. шаг указали -2.
.фЛ
Ну а далее мы при помощи split пытаемся разбить слово по пробелам. Но проблема - у нас нет пробелов.
Вспоминаем, что split В ЛЮБОМ случае преобразует строку в список.
Так мы и получили список с одним элементом - нашим укороченным словом.
Ответ: ['.фЛ']
.фЛ
Ну а далее мы при помощи split пытаемся разбить слово по пробелам. Но проблема - у нас нет пробелов.
Вспоминаем, что split В ЛЮБОМ случае преобразует строку в список.
Так мы и получили список с одним элементом - нашим укороченным словом.
Ответ: ['.фЛ']
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
📎(первая часть)
После того, как мы определили класс формы, мы можем использовать его в представлении для обработки данных, отправленных пользователем. Рассмотрим следующий пример:
from django.shortcuts import renderЗдесь мы определяем представление
from .forms import LoginForm
def login_view(request):
if request.method == 'POST':
form = LoginForm(request.POST)
if form.is_valid():
# Обработка валидной формы
pass
else:
form = LoginForm()
return render(request, 'login.html', {'form': form})
login_view, которое обрабатывает запросы GET и POST. Если запрос GET, мы создаем экземпляр формы и передаем его в контекст шаблона. Если запрос POST, мы создаем экземпляр формы, передаем ему данные из запроса и проверяем, является ли форма действительной. Если форма действительна, мы можем обрабатывать данные.Наконец, мы можем использовать формы в шаблонах, чтобы позволить пользователям отправлять данные на сервер. Для этого мы можем использовать следующий код в файле шаблона:
<form method="post">Здесь мы используем тег
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Отправить</button>
</form>
form для создания HTML-формы. Мы указываем метод отправки POST и добавляем защитный токен csrf_token. Затем мы используем метод as_p() для отображения полей формы в виде абзацев.#django #forms #формы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
👍3🥰1
Python имеет множество встроенных функций. Одна из таких функций -
map(). Эта функция используется для преобразования каждого элемента в итерируемом объекте, таком как список или кортеж.Синтаксис функции
map() очень прост:map(function, iterable, ...)Первый аргумент - это функция, которая будет применена к каждому элементу итерируемого объекта. Второй аргумент - это итерируемый объект, который нужно преобразовать. Дополнительные аргументы могут быть добавлены для нескольких итерируемых объектов.
Пример использования функции
map():def square(x):Вывод:
return x ** 2
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(square, numbers)
print(list(squared_numbers))
[1, 4, 9, 16, 25]
map() часто используется вместе с лямбда-функциями, что делает код более компактным. Вот пример:numbers = [1, 2, 3, 4, 5]Вывод:
squared_numbers = map(lambda x: x ** 2, numbers)
print(list(squared_numbers))
[1, 4, 9, 16, 25]
Вы также можете использовать функцию
map() для преобразования нескольких списков одновременно. Вот пример:list1 = [1, 2, 3]Вывод:
list2 = [4, 5, 6]
summed_list = map(lambda x, y: x + y, list1, list2)
print(list(summed_list))
[5, 7, 9]Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1
👍4❤1
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
У нас есть класс, с уже заданными в нем полями a = 5, b = 3. В классе так же есть метод res(), который возвращает результат суммы полей.
Создаем на основе класса объект a.
Далее, в переменную b присваиваем результат вызова A.res(a) —> вызвали метод через класс, а в self передали наш объект а —> получили сумму 5+3 = 8.
Далее c = a.res() —> вызываем метод уже через сам объект, но все равно сам объект идет в self. Получаем тоже 5 + 3 = 8
Проверка b == c —> 8 == 8 —> True
В этой задаче рассмотрены 2 способа вызова метода. Через класс, передавая объект, и через сам объект.
Создаем на основе класса объект a.
Далее, в переменную b присваиваем результат вызова A.res(a) —> вызвали метод через класс, а в self передали наш объект а —> получили сумму 5+3 = 8.
Далее c = a.res() —> вызываем метод уже через сам объект, но все равно сам объект идет в self. Получаем тоже 5 + 3 = 8
Проверка b == c —> 8 == 8 —> True
В этой задаче рассмотрены 2 способа вызова метода. Через класс, передавая объект, и через сам объект.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🤯1
Функция time.sleep() используется для приостановки выполнения программы на определенное количество секунд. Это может быть полезно, когда вы хотите установить паузу между выполнением двух операций, чтобы дать вашей программе время на обработку данных или подключение к другим сервисам. Например, если вы хотите подключиться к веб-серверу и получить данные, то перед этим можете использовать функцию time.sleep() для установки паузы между отправкой запроса и получением ответа.
Функция time.sleep() принимает один аргумент - количество секунд, на которое нужно приостановить выполнение программы. Например, если вы хотите приостановить выполнение программы на 5 секунд, вы можете использовать следующий код:
import time
print("Начало выполнения программы")
# Приостановить выполнение программы на 5 секунд
time.sleep(5)
print("Программа завершила выполнение")Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
Затянувшийся разбор, извиняюсь!
У нас отличный пример наследования. Так как класс Child наследуется от класса Parent, то __init__ Parent'a будет и __init__'ом Child'a.
Помним, что __init__ - это метод конструктор, вызывающийся при создании объекта.
Соответственно, создаем объект mark = Child('Mark') —> в поле name объекта помещается имя Mark.
Ну а далее метод info() выводит нам это имя на экран.
Ответ: Mark
У нас отличный пример наследования. Так как класс Child наследуется от класса Parent, то __init__ Parent'a будет и __init__'ом Child'a.
Помним, что __init__ - это метод конструктор, вызывающийся при создании объекта.
Соответственно, создаем объект mark = Child('Mark') —> в поле name объекта помещается имя Mark.
Ну а далее метод info() выводит нам это имя на экран.
Ответ: Mark
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Python Hub - сборище Питонистов
Хочу сказать спасибо всем, кто присылал решения на данную задачу!
Кто не присылал, присоединяйтесь следующий раз!😎
Начнем с разбора кода рекурсией.
Возьмем первое же решение. (они все схожи)
А теперь то же самое, только при помощи while. Ничего особо не меняем и... вуаля.
Скоро следующая задача!👨🎓
Кто не присылал, присоединяйтесь следующий раз!😎
Начнем с разбора кода рекурсией.
Возьмем первое же решение. (они все схожи)
def is_power_of_two(n): #Функция получает в себя число
if n == 1: #Проверка на то, что число равно 1
return "YES" #Возвращаем YES в ВЫЗОВ
elif n % 2 == 1: #Проверка на нечетность(степенью никак не может быть)
return "NO" #Возвращаем NO в ВЫЗОВ
else: #Иначе
return is_power_of_two(n//2) #Возвращаем вызов функции.
Хочется отметить, что возвращая вызов функции, мы вернем ТО, ЧТО ФУНКЦИЯ ВЕРНЕТ. То есть у нас получается возврат, возвращаемого значения. Надеюсь, поняли🙃.А теперь то же самое, только при помощи while. Ничего особо не меняем и... вуаля.
def is_power_of_two(n): #Функция получает в себя число
while True:
if n == 1: #Проверка на то, что число равно 1
return "YES" #Возвращаем YES в ВЫЗОВ
elif n % 2 == 1: #Проверка на нечетность(степенью никак не может быть)
return "NO" #Возвращаем NO в ВЫЗОВ
else: #Иначе
n = n//2 #Уменьшаем значение n
Cвои вопросы по этой или другим темам вы можете задавать сюда или в предложку.Скоро следующая задача!👨🎓
Telegram
PythonHub/Programemes [Предложка]
Бот-предложка. Отправь мне вопрос, сообщение или мем.
👍2👎1
👍3
Инкапсуляция - это один из четырех основных принципов объектно-ориентированного программирования. Она позволяет скрыть внутреннюю реализацию объекта от других объектов и защитить его состояние от неправильного использования.
В Python, чтобы скрыть атрибуты объекта, их нужно объявить как приватные, используя два подчеркивания перед именем атрибута. Например, для создания приватного атрибута
name нужно написать __name. Также для доступа к этому атрибуту извне класса нужно использовать специальные методы get и set.Метод
get возвращает значение приватного атрибута, а метод set устанавливает новое значение. Эти методы должны быть определены в самом классе. Например:class Person:#ООП #инкапсуляция
def __init__(self, name):
self.__name = name
def get_name(self):
return self.__name
def set_name(self, name):
self.__name = name
person = Person("John")
print(person.get_name()) # "John"
person.set_name("Mike")
print(person.get_name()) # "Mike"
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1
К посту выше.
Для чего нужна инкапсуляция вообще?
- Защита данных от внешнего доступа
- Предотвращение случайных изменений данных
- Упрощение взаимодействия с объектами
- Сокрытие сложной логики работы объекта от пользователя
Будет ли код работать без нее?
- Да, будет
Для чего нужна инкапсуляция вообще?
- Защита данных от внешнего доступа
- Предотвращение случайных изменений данных
- Упрощение взаимодействия с объектами
- Сокрытие сложной логики работы объекта от пользователя
Будет ли код работать без нее?
- Да, будет
🔥5