Tigran
Да ну, на каждый класс по файлу норм, если дизайн классов нормальный.
Kirill
Но а если таки у меня файл описывает строго какую-то логику, и строго в одном классе? То назвать его именем класса, но транслировать в snake_case?
Имена модулей в питоне пишутся в lowercase. А поскольку имя модуля это имя файла или папки, то значит это правило распространяется и на них
Prunkles
То есть мне следует рассуждать как "Сначала пишу весь код в одном файле, не волнуясь о названии файлов, а потом раскидываю фрагменты по файлам, которые называю кое-как, лишь бы смысл был хотя бы чуть-чуть понятен"?
Prunkles
Утрируя, конечно же
Kirill
Обычно код раскидывают по каким то функциональным признакам, а не по классам. Например: models views utils resources errors forms handlers и т.д.
Kirill
Часто вообще используется какой-то фреймворк, в котором уже есть какие-то свои, исторически сложившиеся, варианты того, что и в какой файл запихивается.
Prunkles
Обычно код раскидывают по каким то функциональным признакам, а не по классам. Например: models views utils resources errors forms handlers и т.д.
Можно подробнее об принятой архитектуре проектов? А то я немного растерялся, когда, при создании нового проекта, я прост ополучил пустую папку (сравнительно с некоторыми другими ЯПами, это немного конфузит)
Kirill
Если ты не используешь фреймворк, в котором есть туториал и примеры проектов, из которых ты можешь подчерпуть какие-то идеи - то делай как хочешь, главное что бы имена файлов были в lowercase.
cookie🍪
вот тут неплохо про именование https://www.python.org/dev/peps/pep-0008/#prescriptive-naming-conventions
Kirill
Ну и конечно же включай "здравый смысл". Структура исходников должна быть в достаточной степени понятной, что бы мало знакомый с ними человек, мог быстрее в них оринетироваться. Мог например быстро понять, что класс модели наверняка лежит в файле models.py, и не искал его в других файлах.
Алексей
Можно подробнее об принятой архитектуре проектов? А то я немного растерялся, когда, при создании нового проекта, я прост ополучил пустую папку (сравнительно с некоторыми другими ЯПами, это немного конфузит)
1) Ну сначала надо понять, что питон - это не джава, а значит классы совершенно не обязательны, особенно если все его методы статические или classmethod, есть модули и функции и если можно обойтись ими, значит нужно обойтись ими. 2) в каждом пакете должен быть __init__.py и не обязательно пустой 3) UpperCamelCase для классов, всё остальное в snake_case
Prunkles
То есть тут файлы - это просто "пакетики с кодом"? (как будто при любом другом языке это не так, но тут я делаю акцент на то, что в одном файле может содержаться много чего разного)
Prunkles
Так файлы в lowercase или в snake_case?
Khasan
друзья подскажите пожалуйста что делает эта функция def _get_gmsh_exe(): macos_gmsh_location = "/Applications/Gmsh.app/Contents/MacOS/gmsh" return macos_gmsh_location if os.path.isfile(macos_gmsh_location) else "gmsh"
melvin
если файл по первому пути есть вернет его
Alex
Alex
snake_case обычно, если ты о допустимости подчеркиваний в имени
Alex
someveryinterestingname some_very_interesting_name
обычно таки разделяют подчеркиваниями, но бывают исключения.
Khasan
а что случилось с чатом Питон-бегиннерс? Куда делся Зарт?
Denis
Там он
melvin
интересно
Steel
Ничесе
Steel
Кому, интересно, не лень найти было?
melvin
🌚
Steel
🌚
😳
🇺🇦
Привет всем. На каком сайте можно подучить питон? Не чайник в кодинге, в шарплю свободно. Просто чтоб не сидеть неделями на азах, таких сайтов вроде большинство
🇺🇦
https://docs.python.org/3/
Да не, на подобии codeacademy
Андрей
книги читай
🍁 Jaŭhien
Да не, на подобии codeacademy
https://m.youtube.com/playlist?list=PLlb7e2G7aSpQhNphPSpcO4daaRPeVstku Ну и какой-нибудь онлайн-задачник вроде exercism или leetcode
🍁 Jaŭhien
Документацию уже посоветовали
🇺🇦
ну так codecademy
Да там просто вопросы для новичков в начале, а пропустить вроде никак
Ilya
а еще там 3 питон за деньги за так только 2
🍁 Jaŭhien
;D
🍁 Jaŭhien
Второй питон уже бесплатно раздают. Скоро еще и доплачиаать за него начнут
Morfeus
Всем привет! Кто может разработать точно такого же бота: @knbgame_bot По сути нужно его скопировать 1 в 1. Пишите в ЛС!
Morfeus
@botoid
спасибо!
Vasyl
Привет ребята! Стоить ли учить python как первый язык программирования?
Denis
тоит
Alex
Почему бы нет. Питон няшный.
Khasan
Khasan
Вон что я в выходные на Питоне ваял
Je
симпатично, а куда ты потом можешь импортировать свои скрипты, какие CAD это поддерживают?
Денис
Haskell
"как сломать себе жизнь"
Арсений
А почему бы и нет, зато воспоминания на всю жизнь
Volodimir Kovalov
Если сильно хочется понимать "что там под капотом творится" - стоит начать с С, а если припекает сделать какую-нить поделку, чтоб оно работало - то да, питон будет очень ок.
Steel
"как сломать себе жизнь"
Кто-то в Хабре говорил, что функциональные языки чайникам легко даются. Я конечно не очень верю, но все же
Volodimir Kovalov
И ещё не очень понятно, к каким местам потом прикладывать этот Хаскель.
Денис
Кто-то в Хабре говорил, что функциональные языки чайникам легко даются. Я конечно не очень верю, но все же
Декларативный, мать его! Не знаю, легко ли, но после него на другие сложно будет
Steel
Вообще ничем не обоснованное заявление
Ну типа способ мышления, бла бла бла...
Алексей
у человека изначально вполне императивный способ мышления
Denis
Vladimir
симпатично, а куда ты потом можешь импортировать свои скрипты, какие CAD это поддерживают?
Скрипты походу никуда, зато сгенеренные модели,судя по докам рино, можно в разные кады экспортировать.
Алексей
это у математиков может быть развивается что-то похожее на функциональное мышление
Denis
Для сравнения https://beginnersbook.com/2015/02/quicksort-program-in-c/ http://wiki.c2.com/?QuickSortInHaskell
Denis
Кто-то считает, что на си понятнее?
ilya
на си как на родном понятно) Хаскель жопа какая то)
r
а разве квиксорт на хаскеле это не самый короткий в мире анекдот?
Denis
Я не про синтаксис языка, а про понятность того, что делает алгоритм
Алексей
опять же, не все алгоритмы хорошо ложатся на ФП, не все структуры данных имеют эффективную иммутабельную реализацию
Steel
Я не про синтаксис языка, а про понятность того, что делает алгоритм
quicksort small + large + quicksort big where small = [blablabla...] large = [... big = [... Может, реально Haskell поучить? Мне понравилось ☺️
Denis
Лучше скалу, ее еще и используют