Изчислете метаболизма на базалните калории - Германският форум на Python

От 2002 г. дискусии за езика за програмиране Python

метаболизма

Изчислете метаболизма на базалните калории

Разбира се, радвам се да получа обратна връзка и предложения за подобрение

Няма нищо общо с ООП. Фактът, че не можете да измислите по-добро име за класа от Object, трябваше да ви покаже това повече от ясно.

В противен случай Python има ръководство за стил PEP 8, което определя редица конвенции. Правописът на почти всички имена нарушава това.

Говорейки за имена: функциите и методите правят нещо. ИТМ, мъж и жена са съществителни и не описват никаква дейност, не правите ИТМ, мъж или жена. Използвайте глаголи за функции и методи или нещо, което се доближава до тях като get_bmi или get_female_bmr (базална скорост на метаболизма).

Ако възникнат грешки, в Python се появява изключение. Не е нужно и не трябва да сигнализирате за грешки чрез връщани стойности.

Ако имате някакви постоянни низове или числа, които имат специфично значение, като например целите числа в методите мъжки и женски, трябва да използвате това име. Това също има смисъл, ако не искате да го дефинирате на ниво модул.

Ако използвате някакви нетривиални формули или алгоритми, трябва да ги обясните с коментар или поне да обясните как се наричат ​​и да посочите източник (статия в Уикипедия, учебник, хартия, публикация в блог,.).

В Мъж и Жена извиквате ИТМ два пъти, това е веднъж повече от необходимото. Можете да си спомните резултата, ако го направите за KCAL (отново лошо име, калориите ли са в парче торта?) И бихте могли да се спасите.

Трябва да премахнете отпечатъците, ако искате кодът ви да се използва сериозно. Ако искате да тествате кода си, напишете модулни тестове. Стандартната библиотека предлага doctest (не е страхотен, но достатъчен тук) и unittest (добре) за последния. Ако искате да поразровите малко, трябва да погледнете pytest.