В тази публикация от курс по програмиране в Python, използвайки Linux Ще продължим да говорим за това как да документираме какво прави кодът. Това е много полезно упражнение, тъй като паметта ни не винаги е надеждна, когато става въпрос за запомняне на написаното. Ще ви представим и темата за циклите.
От друга страна, ако пишем код професионално или сме част от общност от проекти с отворен код, е вероятно други хора да трябва да правят модификации, така че те трябва да знаят къде се намират. Циклите ни позволяват да продължим да изпълняваме програми, докато не бъде изпълнено условие.
В предишната статия представихме концепцията за документационни низове (docstrings). Документационните низове ни позволяват да получим кратки обяснения за това какво правят определени функции, класове, методи и модули. без да е необходимо да спирате изпълнението на програмата и да четете целия код, докато не намерите коментар. Но преди да продължим, нека разгледаме някои концепции.
- Функция: Многократно използваем блок код, който изпълнява конкретна задача.
- клас: Това е калъп за дефиниране на обектите, които създаваме от него.
- метод: Това е функция, която принадлежи към клас.
- Модул: Това е Python програма, която може да се изпълни в друга Python програма.
Класът и функцията са неща, които обяснихме в предишни статии. Ще говорим за модулите по-късно.
Документационни низове
Документационните низове са текстови низове qТе се поставят в началото на функция и съдържат кратко описание на това какво прави функцията, какви параметри получава и какви стойности връща.
Както виждаме, в три двойни кавички е текстът, който обяснява как работи функцията и предоставя пример. По-долу е кодът за сравнението.
Причините за използване на документационни низове са:
- яснота: Те помагат на човека, който трябва да прегледа кода, да разбере по-бързо какво прави всяко нещо.
- Лесен за достъп: Документацията е достъпна от интерактивната конзола.
- Съответствие със стандартите: Използването на docstrings за документиране на код е конвенция, широко приета от Python общността.
- Актуализация: ПТова ви позволява лесно да документирате промените в кода, без да е необходимо да генерирате нови файлове.
В началото на този курс препоръчваме да използвате Visual Studio Code като интегрирана среда за разработка и да инсталирате някои допълнителни разширения. VS Code автоматично показва текста от документационните низове, когато задържите курсора на мишката върху него. Други начини да направите това включват:
- От интерактивната конзола: (Linux терминалът, от който стартирате Python приложението.
- От същия програмен код, който изпълняваме.
- От друга програма, която импортира функцията.
Това са примери с командата помогне()
Първо, едно уточнение. Поради несъвместимост между изискванията за отстъпи на Python и системата за управление на съдържанието на блога, не мога директно да поставям много дълги фрагменти от код. Pastebin, където поставях кода в предишни статии, има ограничение за безплатно ползване, което вече съм надвишил. Ето защо използвам скрийншотове. Във всеки случай, копирането на кода на ръка ще ви помогне да разберете как работи.
Можем да извикваме docstring-ове директно от терминала, където изпълняваме програмата, която пишем, със следните команди:
from detectar_distro import obtener_info
help(obtener_info)
Трябваше предварително да запазим предишната програма като detect_distro.py
От кода на друга програма
# archivo: consulta.py
from detectar_distro import obtener_info
help(obtener_info)
Извършване на повтарящи се задачи
Досега сме виждали само програми, които изпълняват задача и след това спират. Но, В реалния свят приложенията работят непрекъснато, докато потребителят не ги спре. Един от начините да се постигне това е чрез използване на цикли; циклите изпълняват код, стига да е изпълнено определено условие.
Условието се задава с командата докато
Тази програма създава променливата за разпределение и я задава с командата while, докато потребителят не въведе Ubuntu Все още го молят да напише името на дистрибуция.
Циклите while са много полезни, когато не можем да определим колко пъти трябва да се изпълни кодът, за да се получи желаният резултат. Например, ако искаме да симулираме еднократно хвърляне на заровете и резултатът няма значение, няма да ни е необходим while цикъл.
Някои полезни случаи на употреба са:
- Помолете потребителя да въвежда данни, докато въведените данни станат правилни.
- Извършвайте изчисления, докато не се постигне очакваният резултат. (Например, когато в училище знаехте решението на даден проблем, но не и как да го постигнете)
- Обработвайте данните в списък, докато стигнете до края.
Един от начините за използване на цикъла while е чрез задаване на брояч с определен брой опити.
Програмата работи както следва:
- Създава се променлива за опитите и се задава на 0, друга задава броя на опитите на максимум 5 и се създава променлива за съхраняване на потребителския вход.
- На цикъла while са присвоени две условия: потребителят не е познал правилно и не е изчерпал броя на опитите.
- Всеки път, когато потребителят направи опит, броячът се увеличава.
- На потребителя се показва номерът на опита.
- Когато е изпълнено някое от двете условия, се определя дали потребителят е спечелил или загубил.
Прекъсване и продължаване
Има две правила, които влияят върху функционирането на цикъла, в допълнение към изпълнението или неизпълнението на условието:
- Прекъсване: Това спира изпълнението на цикъла, дори ако условията не са изпълнени, и прескача към първия ред код извън цикъла. Това може да бъде полезно, например, ако потребителят иска да излезе от програмата.
- Продължи: Това не спира целия цикъл; вместо това, пропуска текущия опит и преминава към следващия. Например, в нашата програма, която пита за Linux дистрибуции, ако потребителят въведе „Windows“, може да го помоли да въведе името на дистрибуцията отново, без да извършва проверката.
В следващата статия ще продължим да развиваме тази тема.