Форум сайта python.su
Есть проект состоящий из пакетов: gui, model, utility и основного файла main.py. В пакете gui есть модуль, связанный с другими модулями из этого же пакета (gui) и с модулями из пакета utility. В PyCharm, как делать нечего, дописываю: «if __name__ == «__main__»: …. запукаю модуль на выполнение и тестирую его работу.
Как сделать подобное в VSCode? Там работает толлько при условии отсутствия ссылок на другие модули этого же проекта!?
Офлайн
frogling
и PyCharm и VSCode - это просто редакторы текста, они не добавляют никакой магии в программу. Если у вас работает в одном редакторе, но не работает в другом, значит вы делаете что-то очень не так. Любую питонью программу вы можете запустить из консоли, не используя средств автоматизации предоставляемых ИДЕ. Попробуйте запусить из консоли, оно либо будет работать либо выдаст ошибку. Ошибка означает неверно написанную программу, а редакторы тут не при чем.
Офлайн
Вы конечно, судя по тону, мэтр программирования, но …
Вы меня не поняли. И VSCode и PyCharm не просто редакторы, а интегрированные среды разработки, позволяющие запускать и отлаживать программы (текстовый редактор - это Блокнот или gedit).
Есть две идеологии разработки программ: сверху (начиная с main и далее) или снизу (наичная с ссоставляющих ее частей, которые затем наследуются или включаются на более высоком уровне). При этом при разработке программ с GUI возникет необходимость просто посмотреть как будет смотреться то или иное окно или диалог (и не только в этом случае - иногда отладить работу какого-либо модуля гораздо проще запустив его как самостоятельную программу) К стати, сам атор языка Гвидо ван Россум, рекомендовал по возможности заканчивать модули «if __name__ == «__main__»: … для более простой отладки. Так вот, в PyCharm, такая возможность реализована внутри нее, и не надо делать ни каких манипуляций с настройками. Просто добавив в модуль «if __name__ == «__main__»: …, с сответствующей начинкой, можно запустить его
на выполнение, как полноценную программу. Поскольку в Анаконде есть VSCode, решил попробывать ее в работе, но столкнулся с тем, что там нет возможности (или я ее просто не нашел) запустить отдельный модуль из пакета как отдельную программу, если он ссылается на другие модули, даже в своем пакете. Т.е. для этого у меня должен быть главный модуль программы который будет запускать другие модули моей программы
Офлайн
frogling
Доргой, объясните, какое отношение имеет строка
frogling
f __name__ == «__main__»
froglingкакая возможность, о чем вы говорите?
Так вот, в PyCharm, такая возможность реализована внутри нее
Офлайн
froglingfrogling, да все все прекрасно поняли, тут далеко не все школьники и прекрасно знают для чего нужна строка: “if __name__ == ‘__main__’:”, а вот вы походу не до конца понимаете.
Вы меня не поняли.
froglingО_о, И что оно говорит? Вы же сами утверждали что это “интегрированные среды разработки, позволяющие запускать и отлаживать программы”. Выложить отладочную информацию вам религия не позволяет?
но столкнулся с тем, что там нет возможности (или я ее просто не нашел) запустить отдельный модуль из пакета как отдельную программу, если он ссылается на другие модули, даже в своем пакете.
[code python][/code]
Офлайн
frogling
Ты бредишь что ли?
Какой в сраку воробей?
Офлайн
Конечно вы все такие умные. Просто страсть Гду уж вам до простых истин. Вам высокое подавай. Интересно только вы сами то что нибудь стоящее создали. У меня, не хвастаясь, програмных комплексов (не просто программ) работают. Правда на других языках. Просто разбираюсь с Python. Но здесь видимо одни снобы с болезенным самолюбием. И на этом форуме мне видимо не место
[code python][/code]
Отредактировано PEHDOM (Фев. 5, 2020 12:59:56)
Офлайн
Судя по всему, единственной причиной появления гражданина на форуме было рассказать о том, какой он великий писатель программных комплексов и какое тупое и бескультурное быдло его окружает. Поведение очень характерно для не так давно прошедшегося яркой кометой по нескольким темам Жеки Козолупа - та же маниакальная страсть кидаться гавном на любое замечание, которое девятикласник не смог распарсить в виду отсутсвия способности к критическому восприятию мира. Жека, кстати тоже при любом удобном случае врал о своих достижениях и тоже активно срал мне в почту.
Иногда они возвращаются.
Офлайн