Python Hub - сборище Питонистов
前往频道在 Telegram
Уголок счастья для любого питониста. Сотрудничество или заказы: @leshunist https://shcoder.dev - студия разработки ShcoderDevelopment https://t.me/pythonhub_chat - чат
显示更多1 713
订阅者
+124 小时
-107 天
-2030 天
帖子存档
Разбор 👨💻
У нас есть класс a и функция a. Функция была создана позже, поэтому переменная была переопределена на функцию.
Но! В строке b = a(), мы присваиваем в переменную то, что функция вернет. А вернет она None.
Соответственно, ответ: NoneType
⏺ Что такое GitLab?
GitLab - это веб-платформа для управления репозиториями Git, используемыми для хранения и управления исходным кодом приложений. Это инструмент для разработки программного обеспечения, который предоставляет широкий набор функций, в том числе управление версиями, совместную работу, непрерывную интеграцию и непрерывную доставку.
➡️Управление версиями
Одной из основных функций GitLab является управление версиями. Эта функция позволяет разработчикам сохранять различные версии кода, которые могут быть использованы для восстановления предыдущих версий при необходимости. Благодаря системе контроля версий, которая реализована в GitLab, разработчики могут работать над одним и тем же проектом, не опасаясь потерять свою работу.
➡️Совместная работа
GitLab также предоставляет широкие возможности для совместной работы над проектами. Разработчики могут создавать задачи, определять приоритеты и назначать ответственных за их выполнение. Это позволяет упростить коммуникацию между разработчиками и ускорить процесс разработки.
➡️Непрерывная интеграция и доставка
GitLab также предоставляет инструменты для непрерывной интеграции и доставки (CI/CD), что позволяет автоматизировать процесс сборки, тестирования и развертывания кода. Это ускоряет процесс разработки и повышает качество кода.
Разбор 👨💻
Все мы знаем, что round() округляет число до n знаков после точки.
Но что будет, если мы округлим до -n?
Он будет округлять целую часть, оставив в дробной .0
Вот наглядный пример:
value = 123456
print(round(value, -1))
# 123460
print(round(value, -2))
# 123500
print(round(value, -3))
# 123000
print(round(value, -4))
# 120000
В нашем случае получим 0.0, так как целой части нет, а дробной не останется.
▶️ Разберем задачу
Поступил только 1 ответ, поэтому начнем рассмотрение с него.
Создание анонимной функции s(), в которую требуется передать число.
s = lambda x: '' if not x else str(x%10)+'\n'+s(x//10)
Теперь давайте представим это в виде обычной функции для наглядности:
def s(x): # создаем функцию
if not x: #проверяем, что x != 0 <-- not 0 <-- not False <-- True
return '' # возвращаем пустой текст
else:
return str(x % 10) + '\n' + s(x // 10) #переводим остаток от деления на 10 в строку, прибавляем переход на новую строку, прибавляем вызов функции s (рекурсия), куда передаем число, деля его целочисленно на 10 --> обрубаем последнюю цифру, так как остаток уже достал нам ее
Суть заключается в том, что мы можем брать последнюю цифру числа при помощи остатка от деления на 10 ( x%10), а потом обрубать эту последнюю цифру при помощи целочисленного деления ( x//10).Разбор 👨💻
Сразу отметим, что метод sort() сортирует исходный список и возвращает None.
Функция sorted() возвращает отсортированный список.
Получается, что на 3-й строке в b будет занесено None, а список a отсортируется.
Далее, в 4-й строке мы занесем отсортированный список в переменную c. (результат же возвращается)
Ну и теперь в принте осталось проверить:
[1, 2, 3, 10] == None , [1, 2, 3, 10] == [1, 2, 3, 10]
False, True
Разбор 👨💻
В одном из постов говорилось о том, что метод append() ничего не возвращает.
Поэтому сравнение в принте можно переписать —> not None == None
None == None ? Да! —> True. НО!
У нас же есть not. not True —> False
Ответ: False
❔Что хранится в файле settings Django?
➡️ DEBUG - параметр, указывающий, включен ли режим отладки. При установке значения True включается режим отладки, который выводит дополнительную информацию об ошибках.
➡️ DATABASES - раздел, отвечающий за настройку базы данных. В этом разделе можно указать тип базы данных, адрес сервера, порт, имя базы данных и другие параметры.
➡️ INSTALLED_APPS - список установленных приложений. В этом разделе указываются все приложения, которые будут использоваться в вашем веб-приложении.
➡️ STATIC_URL - параметр, указывающий на путь к статическим файлам. Этот путь используется для обращения к статическим файлам в вашем приложении.
➡️ TEMPLATES - раздел, отвечающий за настройку шаблонов.
Это лишь некоторые из наиболее важных параметров, которые могут быть заданы в файле settings.py.
Настройки редактируются в процессе написания программы в зависимости от потребностей проекта.
▶️ Задача:
Число N по одной
Дано натуральное число N. Выведите все его цифры по одной, в обратном порядке, разделяя их пробелами или новыми строками.
*(усложнение)
При решении этой задачи нельзя использовать строки, списки, массивы, циклы. Разрешена только рекурсия и целочисленная арифметика. Использовать операцию получения остатка от деления, и операцию целочисленного деления.
Ответы пишите в комментарии или присылайте в предложку!
Разбор 👨💻
Мы создаем пустой список b.
Далее мы пробегаемся циклом по числам от 0 до 2, добавляя их в список b, а результаты, которые возвращает функция append() кладем в список a.
Порядочные люди знают, что append() ничего не возвращает —> возвращает None. Таким образом, ответом будет являться список из 3-ех None —> [None, None, None]
p.s. там даже случайно в других вариках была допущена ошибка. Список генерирует 3 элемента, а там списки, где доходит до 4-ех.
👀 Искал какой-нибудь roadmap для Python разработчика.
Важно, чтобы было картинкой и на русском. Может кому-то будет интересно и полезно.
Если у вас тоже есть roadmap, то поделитесь в комментариях🥹
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
