Найти - Пользователи
Полная версия: Ошибка Tcl 'can't read "::tcl_pkgPath": no such variable'
Начало » GUI » Ошибка Tcl 'can't read "::tcl_pkgPath": no such variable'
1 2
drevoborod
Спасибо за комментарии!
1. PEP8 мне знаком, хотя, конечно, назубок я его не учил, да и читал уже несколько лет назад. И, так как код мне до сих пор приходилось писать только для себя лично, я исходил из соображений своего удобства. Когда ситуация изменится, изменю и свой подход.
2. Я пробовал НЕ задавать размеры канваса, но не нашёл другого способа заставлять его занимать нужную мне область. Если не задавать его размеры принудительно, он ставит их по умолчанию, игнорируя при этом все размеры как тех виджетов, что находятся внутри, так и окружающих. Как с этим бороться, я пока не понял.
3. Ага, это я просто тренируюсь в написании компактного кода Цели чисто учебные, как и у всего проекта, кстати.
4. Докстринги на русском, опять же, я пишу для себя, а мне так удобнее Сам интерфейс при этом зачем-то сделал на английском.. Не знаю, почему так вышло, просто так захотелось )

Ну и про “трындец”: мне больше нравится оборачивать вызов в прокси, чем заставлять функцию принимать аргумент (event), который потом никак не будет использоваться (можно *args, но смысл?).
4kpt_IV
drevoborod
1. PEP8 мне знаком, хотя, конечно, назубок я его не учил, да и читал уже несколько лет назад. И, так как код мне до сих пор приходилось писать только для себя лично, я исходил из соображений своего удобства. Когда ситуация изменится, изменю и свой подход.

Лучше менять сразу. Потом будет сложнее. Мало того. Все более или менее толковые IDLE уже имеют на борту анализатор PEP8. Даже PyScripter, но к нему нужно подключать.

drevoborod
3. Ага, это я просто тренируюсь в написании компактного кода Цели чисто учебные, как и у всего проекта, кстати.

Так сразу пишите правильно. Самому же потом легче будет когда придется иметь дело с живым кодом

drevoborod
Ну и про “трындец”: мне больше нравится оборачивать вызов в прокси, чем заставлять функцию принимать аргумент (event), который потом никак не будет использоваться (можно *args, но смысл?).

Это лишняя операция и она затратная. Тут вопрос вообще не ставится что Вам нравиться, а что нет. Это говнокод, простите за высказывание. Все функции-обработчики должны принимать event. Так заведено. А будут они его использовать или нет - Вам уже решать. В питоне на первую строку ставится читабельность кода. Так вот Вы ее нарушаете, когда пишите отсебятину (душите event для обработчиков событий, не пользуетесь PEP8). Вот представьте себе картину, что я пришел из мира JS и мне не нравится self в качестве первого аргумента в методах класса и я везде леплю this. Питонисту будет приятно читать этот код и как он его назовет?

P.S. Вывод простой. Вы правильно делаете, что развиваетесь и пытаетесь постоянно рефакторить свой код, но, если делать это “как мне заблагорассудится”, то профита от этого будет значительно меньше чем бы хотелось Удачи в изысканиях.

P.S.

drevoborod
2. Я пробовал НЕ задавать размеры канваса, но не нашёл другого способа заставлять его занимать нужную мне область. Если не задавать его размеры принудительно, он ставит их по умолчанию, игнорируя при этом все размеры как тех виджетов, что находятся внутри, так и окружающих. Как с этим бороться, я пока не понял.

Канвас все же должен управляться снаружи. Можно задать какие-то значения по-умолчанию в options, или по-умолчанию с обновлением через options, но только не захаркоривать их в коде.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB