ехал any через any
видит any реку any
сунул any руку в any
any any [Object object]
Хватит на сегодня интернета
видит any реку any
сунул any руку в any
any any [Object object]
Хватит на сегодня интернета
Почему нужны if __name__ == "__main__": и __init__.py
Частая путаница у новичков в Python, когда проект становится больше одного файла.
Ты импортируешь файл, а он внезапно что-то запускает сам.
Пишут так:
И ждут, что при
Но получают: Лишние принты, запуск кода, запросы, боты, всё что угодно. Просто потому что файл импортировали.
В чем проблема?
Импорт в Python выполняет файл целиком сверху вниз.
То есть
Как правильно:
Вынеси запуск в блок
Почему это работает:
Python ставит
•
•
Значит
Теперь про `__init__.py`
Еще одна частая боль - Ты сделал папку с файлами, но импорты начинают вести себя странно.
Например структура:
Зачем нужен
Он делает папку
И еще он позволяет сделать удобный “вывод наружу”:
Тогда можно так:
Важное правило!
Не пихай в
Итог:
Частая путаница у новичков в Python, когда проект становится больше одного файла.
Ты импортируешь файл, а он внезапно что-то запускает сам.
Пишут так:
# app.py
def main():
print("Запуск логики")
print("Я загрузился") # сработает даже при import
main() # тоже сработает при import
И ждут, что при
import app просто появятся функции.Но получают: Лишние принты, запуск кода, запросы, боты, всё что угодно. Просто потому что файл импортировали.
В чем проблема?
Импорт в Python выполняет файл целиком сверху вниз.
То есть
import app это не “взять функции”, а “выполнить app.py”.Как правильно:
Вынеси запуск в блок
__main__:# app.py
def main():
print("Запуск логики")
if __name__ == "__main__":
main()
Почему это работает:
Python ставит
__name__:•
"__main__" если файл запустили напрямую: python app.py •
"app" если файл импортировали: import appЗначит
main() запустится только при прямом запуске.Теперь про `__init__.py`
Еще одна частая боль - Ты сделал папку с файлами, но импорты начинают вести себя странно.
Например структура:
project/
app/
__init__.py
utils.py
main.py
Зачем нужен
__init__.py?Он делает папку
app пакетом, чтобы импорты были нормальными:from app.utils import helper
И еще он позволяет сделать удобный “вывод наружу”:
# app/__init__.py
from .utils import helper
__all__ = ["helper"]
Тогда можно так:
from app import helper
Важное правило!
Не пихай в
__init__.py тяжелый код (запуск, сеть, чтение файлов), потому что он выполнится при любом import app.Итог:
if __name__ == "__main__": нужен чтобы код не запускался при импорте.__init__.py нужен чтобы папка стала пакетом и импорты работали предсказуемо.⚠️Ребят, хочу сообщить, что канал с понедельника переезжает в госмессенжер Max.
Max — это цифровая платформа, которую планируют развивать в VK на базе одноименного мессенджера. В дальнейшем компании смогут создавать свои мини-приложения на базе Max Bot API — например, финансовые сервисы, онлайн-магазины, меню для ресторанов, сервисы поддержки и т. п.
У нового мессенджера удобный интерфейс, отличная синхронизация с Госуслугами, всё работает без лагов, но, конечно, самое главное то, что Max - это наша отечественная разработка! А это гарантия надежности и невозможности утечки наших с вами персональных данных.
Согласитесь, здорово - не зависеть от зарубежных разработчиков!
(Текст не редактировать, информацию в скобках - удалить. Оплата по ранее указанными реквизитам в течение 15 минут после публикации)
Max — это цифровая платформа, которую планируют развивать в VK на базе одноименного мессенджера. В дальнейшем компании смогут создавать свои мини-приложения на базе Max Bot API — например, финансовые сервисы, онлайн-магазины, меню для ресторанов, сервисы поддержки и т. п.
У нового мессенджера удобный интерфейс, отличная синхронизация с Госуслугами, всё работает без лагов, но, конечно, самое главное то, что Max - это наша отечественная разработка! А это гарантия надежности и невозможности утечки наших с вами персональных данных.
Согласитесь, здорово - не зависеть от зарубежных разработчиков!
(Текст не редактировать, информацию в скобках - удалить. Оплата по ранее указанными реквизитам в течение 15 минут после публикации)
😭1
Путь Fullstack pinned «❗️Гайд по Python для гигачадов❗️ Если вы используете Python, то бывают случаи когда вам нужно держать несколько версий. Для таких случаев существуют различные утилиты. Я использую pyenv. Он простой и кроссплатформенный. Установка: Windows (pyenv-win): …»
Путь Fullstack
⚠️Ребят, хочу сообщить, что канал с понедельника переезжает в госмессенжер Max. Max — это цифровая платформа, которую планируют развивать в VK на базе одноименного мессенджера. В дальнейшем компании смогут создавать свои мини-приложения на базе Max Bot API —…
Я все жду когда власти возьмутся за отвечественный IT и решат сделать свой git и гитхаб, докер, кубернетис и прочую лабудень. "ОТЕЧЕСТВЕННЫЙ РЕДАКТОР КОДА, ВККОД, СО ВСТРОЕННОЙ ЯНДЕКС АЛИСОЙ И ГИГАЧАТОМ" Вот полюбому это будет работать через одно место как обычно. А все что сейчас нормально работает нахуй запретят.
Страшно становится от этих мыслей
Страшно становится от этих мыслей
И так, последнее обновление CyberDeck перед презентацией привнесло множество изменений
Оба приложения были обновлены до новых версий:
CyberDeck - 1.3.2
CyberDeck-Mobile - 1.1.2
Очень много обновлений, в том числе:
• Обновление UI тачпада на телефоне
• Повышение уровня безопасности
• Сайт-визитка https://overl1te.github.io/CyberDeck/
• Попытка добавить перенос звука (работает херово)
• Повышение устойчивости стрима в разных ситуациях
• ДОДЕЛАННАЯ КРОССПЛАТФОРМЕННОСТЬ ПОД ЛИНУКС (арч курит в сторонке, т.к я хз как его сделать, но на убунту работает ок) (кстати, угадайте кто забыл закомпилировать под линукс? так что линуксоиды запускайте из исходников, в целом для вас это не проблема)
• Доработано управление и стабильность
И это только малая часть обновлений
Что могу сказать, думаю для районного этапа НОУ этого хватит. Надеюсь я не обосрусь с презентацией. К сожалению видео с презентации скорее всего не будет(
Кстати я чуть позже скину доку + презу, которые буду презентавать на ноу.
Оба приложения были обновлены до новых версий:
CyberDeck - 1.3.2
CyberDeck-Mobile - 1.1.2
Очень много обновлений, в том числе:
• Обновление UI тачпада на телефоне
• Повышение уровня безопасности
• Сайт-визитка https://overl1te.github.io/CyberDeck/
• Попытка добавить перенос звука (работает херово)
• Повышение устойчивости стрима в разных ситуациях
• ДОДЕЛАННАЯ КРОССПЛАТФОРМЕННОСТЬ ПОД ЛИНУКС (арч курит в сторонке, т.к я хз как его сделать, но на убунту работает ок) (кстати, угадайте кто забыл закомпилировать под линукс? так что линуксоиды запускайте из исходников, в целом для вас это не проблема)
• Доработано управление и стабильность
И это только малая часть обновлений
Что могу сказать, думаю для районного этапа НОУ этого хватит. Надеюсь я не обосрусь с презентацией. К сожалению видео с презентации скорее всего не будет(
Кстати я чуть позже скину доку + презу, которые буду презентавать на ноу.
GitHub
GitHub - Overl1te/CyberDeck
Contribute to Overl1te/CyberDeck development by creating an account on GitHub.