Нужна помощь Python программистов

[ Версия для печати ]
Добавить в Telegram Добавить в Twitter Добавить в Вконтакте Добавить в Одноклассники
Страницы: (13) « Первая ... 7 8 [9] 10 11 ... Последняя »  К последнему непрочитанному [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]
Constcat
21.05.2022 - 22:14
0
Статус: Offline


Ярила

Регистрация: 9.09.12
Сообщений: 1465
Aberrant
Цитата
не, на самом деле выглядит изящно,

Ты понимаешь, лично я оставил эмоции, связанные с красотой и изяществом кода где-то года четыре назад. Потому что подобный код - это головная боль для саппорта. Можно много говорить про квалификацию, но парсинг этого изящества, как ни крути, занимает время. И его гораздо сложнее модифицировать.
И лично я, когда что-нибудь девелопю, думаю о своем коллеге, который будет, если что, ковыряться в моем коде.
Поэтому иногда умышленно упрощаю. Скорость исправления тикетов значительно увеличивается, клиенты довольны.
 
[^]
alexmasz
21.05.2022 - 22:18
2
Статус: Online


Шутник

Регистрация: 22.09.16
Сообщений: 38
if (сумма >= 100) and not (сумма > 10000):

можно поменять на

if 100 < sum < 10000:
 
[^]
Aberrant
21.05.2022 - 22:20
0
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2835
Цитата (Constcat @ 21.05.2022 - 22:14)
Aberrant
Цитата
не, на самом деле выглядит изящно,

Ты понимаешь, лично я оставил эмоции, связанные с красотой и изяществом кода где-то года четыре назад. Потому что подобный код - это головная боль для саппорта. Можно много говорить про квалификацию, но парсинг этого изящества, как ни крути, занимает время. И его гораздо сложнее модифицировать.
И лично я, когда что-нибудь девелопю, думаю о своем коллеге, который будет, если что, ковыряться в моем коде.
Поэтому иногда умышленно упрощаю. Скорость исправления тикетов значительно увеличивается, клиенты довольны.

да всё я понимаю.

и про ООП-стиль, который красив,
но херово читается, а главное, работает медленнее.
и про такие вот вложенные конструкции с десятком скобок

и да, часто нужно оставить комент, а тупо некуда.
ну а если растащил всё, то какой вообще был смысл красоту наводить...
 
[^]
Aberrant
21.05.2022 - 22:26
1
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2835
Цитата (alexmasz @ 21.05.2022 - 22:18)
if (сумма >= 100) and not (сумма > 10000):

можно поменять на

if 100 < sum < 10000:

о! герпетологи подтянулись и показали, что даже так прокатит.
bravo.gif
 
[^]
Constcat
21.05.2022 - 22:36
0
Статус: Offline


Ярила

Регистрация: 9.09.12
Сообщений: 1465
Aberrant
Цитата
и да, часто нужно оставить комент, а тупо некуда.

Считаю, что коменты и документирование должно быть неотъемлемой частью работы.
Т.е., code review не должен пропускать коммиты без коментов/документации.
 
[^]
ipv4
21.05.2022 - 22:39
1
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7305
Цитата (Aberrant @ 21.05.2022 - 22:09)
не, на самом деле выглядит изящно,
было бы шикарно, если эти функции были своими и существовали в проекте не только для ускорения разработки,
а ещё и потому, что вызываются где-то повторно.

А почему "не только для ускорения разработки"? Красота в простоте! Эти функции могут (и должны!) существовать просто для того, чтобы инкапсулировать логический блок где-то внутри себя!

Чтобы разработчик (и сопровождальщик, кста) не парили себе мозг тем, "как бы не поломать", а спокойно смотрели на код, и, если что, могли поменять отдельные аспекты работы.

Изменились проверки? Говно - вопрос, у нас есть is_valid()! Исправили - заработало по-новому,

Вместо клавиатуры надо использовать NFC? - тоже самое. Доработали одну специальную функцию - вот результат.

При этом, остальная логика программы остаётся нетронутой.

P.S. Господин техсаппортщик, вероятно, просто не обладает достаточной для осуществления поддержки квалификацией, как я понимаю. .... Как там говорил гуру советского самолётостроения? "Некрасивый самолёт хорошо летать не сможет". Я с ним согласен )
 
[^]
ipv4
21.05.2022 - 22:46
1
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7305
Цитата (Constcat @ 21.05.2022 - 22:36)
Aberrant
Цитата
и да, часто нужно оставить комент, а тупо некуда.

Считаю, что коменты и документирование должно быть неотъемлемой частью работы.
Т.е., code review не должен пропускать коммиты без коментов/документации.

Угумс. Встречал хорошую шутку из серии:

// здесь мы проверяем, что n < 0
// теперь к i прибавляем b
// здесь n увеличивается на единицу

Оооочень хорошо документированный код, однако )))
 
[^]
Constcat
21.05.2022 - 22:54
1
Статус: Offline


Ярила

Регистрация: 9.09.12
Сообщений: 1465
ipv4
Цитата
P.S. Господин техсаппортщик, вероятно, просто не обладает достаточной для осуществления поддержки квалификацией, как я понимаю.

Ну, о моей квалификации не мне судить.
Как бы деньги платят, довольны - значит, моя квалификация достаточна.
А мои брюзжания - это исключительно мое видение увеличения эффективности труда.
Тут ведь как - один прогер пришел, другой ушел, далеко не всегда можно получить специалиста высокой квалификации.
А каждый предыдущий с середины 2000 оставил в проекте свой неповторимый след изящества и красоты. biggrin.gif
Усредненный стиль кода + очень много комментов = счастье. И огромная экономия времени на ввод нового (даже высококвалифицированного специалиста) в проект.
 
[^]
ipv4
21.05.2022 - 22:54
-1
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7305
Цитата (Constcat @ 21.05.2022 - 22:14)
Aberrant
Цитата
не, на самом деле выглядит изящно,

Ты понимаешь, лично я оставил эмоции, связанные с красотой и изяществом кода где-то года четыре назад. Потому что подобный код - это головная боль для саппорта. Можно много говорить про квалификацию, но парсинг этого изящества, как ни крути, занимает время. И его гораздо сложнее модифицировать.
И лично я, когда что-нибудь девелопю, думаю о своем коллеге, который будет, если что, ковыряться в моем коде.
Поэтому иногда умышленно упрощаю. Скорость исправления тикетов значительно увеличивается, клиенты довольны.

Вот, поэтому в современном мире программы очень плохо работают. Потому что
if
then
else
и так 100500 раз. Примитивизм, рассчитанный на обезьян. ))))

[upd] О, шпала. Наверно, кому-то на яйца наступил )))

Это сообщение отредактировал ipv4 - 21.05.2022 - 23:03
 
[^]
Constcat
21.05.2022 - 22:57
2
Статус: Offline


Ярила

Регистрация: 9.09.12
Сообщений: 1465
ipv4
Цитата
Оооочень хорошо документированный код, однако )))

Вот, нарыл в дебрях проекта коммент:
Скрытый текст
/// UnpredictablySystemEncodedCString - wrapper-class for holding const char* as c-string in unknown encoding
/**
  * Sometimes there're plain c-strings coded using unknown encoding (maybe current system locale default encoding,
  * maybe it (string) is taken from file encoded for some other locale - you don't know and can't find out),
  * but you feel lucky (you have nothing to do - you have to read that string) - in such cases - use this method.
  *
  * This method reads c-string using platform API and platform default encoding. Here term "default encoding" is
  * CP_THREAD_ACP on Windows and [NSString defaultCStringEncoding] on Mac. Note that [NSString defaultCStringEncoding]
  * on Mac is not (as we understand) current user's locale's default encoding - as we saw, this encoding doesn't change
  * if user changes regional settings in system preferences.
  *
  *
  * "Three Locales and the Great Fuck". Folk fairy tale.
  *
  *  OO  nce, long-long ago, two young men tried to write crossplatform implementation of convertion from
  * O  O const char * in unknow encoding to wchar_t* using std-c++ (std::locale and std::codecvt).
  * O  O They wrote great code and checked it on Windows and it worked, but when they tried to convert
  *  OO  some cyrillic text (as they had Windows "ASCII" 1251 encoding set as default at system and test
  *      string in that encoding), but it failed! Those two young men came to the wise Google and asked,- "WTF?".
  * Wise Google answered using human voice,- "Guys, there are three types of locales at Windows:  WinAPI (SetThreadLocale),
  * std-c++ (std::locale) and std-c (setLocale). All three locales are almost absolutely
  * independent one from each, i.e. if user's default encoding is Windows1251, that doesn't mean
  * that that encoding would be set in default std::locale, thus conversion form char * to wide char
  * using std::locale won't work using Windows1251 and thus will convert incorrectly."
  * Young men didn't find the way to create std::locale from GetThreadLocale() LCID, so they used platform
  * API to convert from char* to wchar.
  * Then guys went to MacOS to fuck even more - there are three locales like at Windows and the same independence of
  * all three one from each other, but there's also some myth [NSString defaultCStringEncoding] wich is not in any of three
  * locales; also guys had found out that std-c++ locale doesn't work at Mac - gcc had left it for future desperado
  * programmers, i.e. there is class std::locale, but it's impossible to create any locale object execept the default - any
  * system locale name ("ru_RU" for example) passed to std::locale constructor just causes exception.
  * The moral of the story is - if you want to have great fuck - use locales.
  *
  *             ~~<@>~~
  *
  *
  * This wrapper used in CZYString(CZYString::UnpredictablySystemEncodedCString) constructor to specify that const unsigned char* argument
  * should be treated as UnpredictablySystemEncodedCString string.
  */


Это сообщение отредактировал Constcat - 21.05.2022 - 22:59
 
[^]
ipv4
21.05.2022 - 22:59
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7305
Цитата (Constcat @ 21.05.2022 - 22:54)
ipv4
Цитата
P.S. Господин техсаппортщик, вероятно, просто не обладает достаточной для осуществления поддержки квалификацией, как я понимаю.

Ну, о моей квалификации не мне судить.
Как бы деньги платят, довольны - значит, моя квалификация достаточна.
А мои брюзжания - это исключительно мое видение увеличения эффективности труда.
Тут ведь как - один прогер пришел, другой ушел, далеко не всегда можно получить специалиста высокой квалификации.
А каждый предыдущий с середины 2000 оставил в проекте свой неповторимый след изящества и красоты. biggrin.gif
Усредненный стиль кода + очень много комментов = счастье. И огромная экономия времени на ввод нового (даже высококвалифицированного специалиста) в проект.

Я бы это не назвал "эффективностью труда". Это - типичный подход "эффективного менеджера", который заключается в том, что одну "эффективную" обезьяну можно в короткие сроки заменить другой. Других задач и профитов я в подобном подходе ьне вижу.

Это ни разу положительно не сказывается ни на качестве результирующего продукта, ни на его стоимости, на самом деле. Единственная задача подхода - сделать из разработки ПО конвейер. Говно, в общем. )))

P.S. И, да, ТС вам в команду подойдёт. Инфа - 100% )))
 
[^]
Мыловарец
21.05.2022 - 23:02
2
Статус: Offline


Шутник

Регистрация: 21.11.20
Сообщений: 0
Цитата (Aberrant @ 21.05.2022 - 14:44)
не писал раньше на пайтоне,

а айчтимиэйль знаешь? popcorn.gif

скажи чо нить на сиплайсплайс gigi.gif
 
[^]
ipv4
21.05.2022 - 23:02
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7305
Цитата (Constcat @ 21.05.2022 - 22:57)
ipv4
Цитата
Оооочень хорошо документированный код, однако )))

Вот, нарыл в дебрях проекта коммент:

Если я начну вместо кода писать душещепательные истории в виде комментариев, меня по головке не погладят... Если заметят, конечно )))

Это сообщение отредактировал ipv4 - 21.05.2022 - 23:04
 
[^]
Constcat
21.05.2022 - 23:03
0
Статус: Offline


Ярила

Регистрация: 9.09.12
Сообщений: 1465
ipv4
Цитата
Я бы это не назвал "эффективностью труда". Это - типичный подход "эффективного менеджера", который заключается в том, что одну "эффективную" обезьяну можно в короткие сроки заменить другой. Других задач и профитов я в подобном подходе ьне вижу.

К сожалению, соглашусь.
Когда стоит вопрос - вылизанный и оптимизированный код или рабочий код, доступный для поддержки прогером среднего уровня, при условии прямой зависимости заработка от удовлетворенности клиента, я выбираю второй вариант.

P.S. А для души я дома себе игрушки ваяю. smile.gif
 
[^]
Мыловарец
21.05.2022 - 23:05
0
Статус: Offline


Шутник

Регистрация: 21.11.20
Сообщений: 0
Цитата (ipv4 @ 21.05.2022 - 22:59)
Единственная задача подхода - сделать из разработки ПО конвейер. Говно, в общем. )))

P.S. И, да, ТС вам в команду подойдёт. Инфа - 100% )))

ну ты знаешь, в интеграторах это приветствуется
интересны не в эффективности твоих алгоритмов, стабильность ПО, а в сдаче проекта
типа капитализм по русски
 
[^]
Aberrant
21.05.2022 - 23:06
0
Статус: Offline


На фоксе! Всегда!

Регистрация: 3.10.20
Сообщений: 2835
Цитата (ipv4 @ 21.05.2022 - 22:59)
Цитата (Constcat @ 21.05.2022 - 22:54)
ipv4
Цитата
P.S. Господин техсаппортщик, вероятно, просто не обладает достаточной для осуществления поддержки квалификацией, как я понимаю.

Ну, о моей квалификации не мне судить.
Как бы деньги платят, довольны - значит, моя квалификация достаточна.
А мои брюзжания - это исключительно мое видение увеличения эффективности труда.
Тут ведь как - один прогер пришел, другой ушел, далеко не всегда можно получить специалиста высокой квалификации.
А каждый предыдущий с середины 2000 оставил в проекте свой неповторимый след изящества и красоты. biggrin.gif
Усредненный стиль кода + очень много комментов = счастье. И огромная экономия времени на ввод нового (даже высококвалифицированного специалиста) в проект.

Я бы это не назвал "эффективностью труда". Это - типичный подход "эффективного менеджера", который заключается в том, что одну "эффективную" обезьяну можно в короткие сроки заменить другой. Других задач и профитов я в подобном подходе ьне вижу.

Это ни разу положительно не сказывается ни на качестве результирующего продукта, ни на его стоимости, на самом деле. Единственная задача подхода - сделать из разработки ПО конвейер. Говно, в общем. )))

P.S. И, да, ТС вам в команду подойдёт. Инфа - 100% )))

о даа, и вот неожиданно в контексте is_valid() из джанги зашёл разговор о качестве кода lol.gif

и да, в целом то я согласен с этим коментом про замену обезьян.

но тут или крестик снимите, или трусы наденьте.
 
[^]
ipv4
21.05.2022 - 23:18
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7305
Цитата (Constcat @ 21.05.2022 - 23:03)
ipv4
Цитата
Я бы это не назвал "эффективностью труда". Это - типичный подход "эффективного менеджера", который заключается в том, что одну "эффективную" обезьяну можно в короткие сроки заменить другой. Других задач и профитов я в подобном подходе ьне вижу.

К сожалению, соглашусь.
Когда стоит вопрос - вылизанный и оптимизированный код или рабочий код, доступный для поддержки прогером среднего уровня, при условии прямой зависимости заработка от удовлетворенности клиента, я выбираю второй вариант.

P.S. А для души я дома себе игрушки ваяю. smile.gif

Здесь некоторые типичные для современной индустрии заблуждения вижу я. Ессно, на мой, сугубо личный взгляд.

1. Никто не требует "вылизанного и оптимизированного кода". Более того, в современных условиях довольно сложно "оптимизировать" код лучше, чем это сделает, в частности, компилятор С++. Попробуйте - удивитесь.

(предвосхищая возражения, говорю именно о "вылизанности и оптимизации" кода, не алгоритмов)

2. Код, написанный для того, чтобы обезьяна "среднего уровня" могла его прочесть и модифицировать, будет стоить кратно дороже. В том числе и в поддержке. Это, также, скажется на возможности его поддержки и развития.

Однако, современные тенденции пытаются программирование поставить на конвейер. И мне это нравится, потому что лично я, с таким подходом, не пропаду ваще ни разу. Мои заказчики вполне удовлетворены и платить больше, просто "за технологию разработки" вряд ли захотят. И я буду принимать на работу действительно нормальных ребят, обеспечивать им достойную з/п, и, при этом, не бояться того, что заказчик скажет "вы нам больше не нужны". Ну, просто потому, что в противном случае, ему понадобится потратить кратно больше денег. И он это вполне понимает. )))
 
[^]
ipv4
21.05.2022 - 23:18
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7305
Цитата (Мыловарец @ 21.05.2022 - 23:05)
Цитата (ipv4 @ 21.05.2022 - 22:59)
Единственная задача подхода - сделать из разработки ПО конвейер. Говно, в общем. )))

P.S. И, да, ТС вам в команду подойдёт. Инфа - 100% )))

ну ты знаешь, в интеграторах это приветствуется
интересны не в эффективности твоих алгоритмов, стабильность ПО, а в сдаче проекта
типа капитализм по русски

))) Я в курсе
 
[^]
ipv4
21.05.2022 - 23:20
0
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7305
Цитата (Aberrant @ 21.05.2022 - 23:06)
но тут или крестик снимите, или трусы наденьте.

Так я, вроде, и не переобувался в прыжке )
 
[^]
AnastasiiaS
21.05.2022 - 23:31
0
Статус: Offline


Шутник

Регистрация: 21.05.22
Сообщений: 15
Ребят, очень нужна ваша помощь cry.gif
Сестре в 7м классе задали годовую контрольную в Python, я сижу уже 5 часов успехов нет, помогите pray.gif

Напишите программу:
•выведите фамилию имя ученика
•сгенирируйте случайное четырёхзначное число (выведите его)
•разбейте число на цифры (выведите их)
•Цифры кратные четырём замерите на 1
•поменяйте местами цифры на непарных позициях (тысячи и десятки(1е и 3е число)
•сформируйте и выведите новое число
 
[^]
ipv4
21.05.2022 - 23:35
2
Статус: Offline


Ярила

Регистрация: 4.11.09
Сообщений: 7305
Цитата (AnastasiiaS @ 21.05.2022 - 23:31)
Ребят, очень нужна ваша помощь cry.gif
Сестре в 7м классе задали годовую контрольную в Python, я сижу уже 5 часов успехов нет, помогите pray.gif

Напишите программу:
•выведите фамилию имя ученика
•сгенирируйте случайное четырёхзначное число (выведите его)
•разбейте число на цифры (выведите их)
•Цифры кратные четырём замерите на 1
•поменяйте местами цифры на непарных позициях (тысячи и десятки(1е и 3е число)
•сформируйте и выведите новое число

Вот это - заявка на победу в +- профильной теме от новорега-новорега! Сначала сиськи.
 
[^]
VREDNYJ
21.05.2022 - 23:37
0
Статус: Offline


Ярила

Регистрация: 31.01.11
Сообщений: 1894
Используйте while и break для циклов. if что-то == True: Это не правильный стнтаксис. Надо писать if что-то: Также используйте фунции, не пишите всё в ряд. Функции должны заканчивать return что-то.

Размещено через приложение ЯПлакалъ
 
[^]
AnastasiiaS
21.05.2022 - 23:38
-1
Статус: Offline


Шутник

Регистрация: 21.05.22
Сообщений: 15
А вам лишь бы сиськи((
А как же безвозмездная помощь даме?
А для кого ххх сайты?)) там их дофига
 
[^]
Jobber
21.05.2022 - 23:43
3
Статус: Offline


Ярила

Регистрация: 8.08.09
Сообщений: 3559
Цитата (AnastasiiaS @ 21.05.2022 - 23:31)
Ребят, очень нужна ваша помощь cry.gif
Сестре в 7м классе задали годовую контрольную в Python, я сижу уже 5 часов успехов нет, помогите pray.gif

Напишите программу:
•выведите фамилию имя ученика
•сгенирируйте случайное четырёхзначное число (выведите его)
•разбейте число на цифры (выведите их)
•Цифры кратные четырём замерите на 1
•поменяйте местами цифры на непарных позициях (тысячи и десятки(1е и 3е число)
•сформируйте и выведите новое число

Настя, подари нам счастье cool.gif
А после можно проблему твоей сестры обсудить brake.gif
 
[^]
Jobber
21.05.2022 - 23:46
1
Статус: Offline


Ярила

Регистрация: 8.08.09
Сообщений: 3559
Кстати, а чем сестра занималась весь год, раз у нее контрольная не получается? И почему тебе не жалко своего времени?

Это сообщение отредактировал Jobber - 21.05.2022 - 23:47
 
[^]
Понравился пост? Еще больше интересного в Телеграм-канале ЯПлакалъ!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии. Авторизуйтесь, пожалуйста, или зарегистрируйтесь, если не зарегистрированы.
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) Просмотры темы: 6332
0 Пользователей:
Страницы: (13) « Первая ... 7 8 [9] 10 11 ... Последняя » [ ОТВЕТИТЬ ] [ НОВАЯ ТЕМА ]


 
 



Активные темы






Наверх