Циклуси

Многу често во компјутерското програмирање би сакале да повторуваме одредени дејства. Понекогаш сакаме да ги повториме овие дејства одреден број пати. Некогаш, сакаме да повториме некои дејства сè додека одреден услов (т.е. Буловиот израз) е True. Понекогаш би сакале да повториме некои дејства за секој елемент на податоци во некоја збирка на податочни елементи. Во Пајтон, можеме да ги правиме сите овие работи користејќи јамки.
1. While – loops
While - јамките функционираат многу како if-argumentite со тоа што имаат многу слична синтакса - услов проследен со блок - но блокот може да се изврши повеќе пати додека условот е True. While-јамките се состојат од зборот while, проследено со булов израз (услов на јамка), проследено со две точки, проследени со блок од код.
Со while-loops, можеме да ги повториме дејствата на барање некаков одговор и проверка на валидноста на одговорот додека корисникот не внесе одговор кој е валиден!
While јамките може да се користат и за извршување на блок од код одреден број пати. Овие се нарекуваат јамки за броење затоа што цела променлива се користи за броење колку пати блокот е извршен, а условот на јамката е таков што условот е True се додека циклусот има извршено помалку од потребниот број пати
2. For – Loops
Во Python, for-јамките дозволуваат повторување на блок код за секој податочен елемент во низа. . Во моментов знаеме за еден вид низа: string. Значи, можеме да користиме for-јамка за да направиме нешто за секој знак во низата.
Генерално, синтаксата на for-јамката се состои од зборот for, проследено со име на променлива, проследено со зборот in, проследено со низа, проследено со две точки, проследено со блок:
for променлива во секвенца:
# Блок на код - секој пат кога овој блок се повторува променливата се однесува на следниот елемент во низата. Повторувањето престанува откако секој елемент од низата се процесирал.
3. Range и For – Loops за броење
Можеме да користиме for-јамки за да креираме јамки за броење исто како што правевме со while-јамките. За да го сториме тоа, прво треба да научиме за нов вид на низа наречена range. Опсегот е низа од цели броеви што започнува со цел број a (почеток), завршува пред цел број b (стоп) и разликата помеѓу секој елемент во низата, наречена големина на чекорот. Опсегот се создава со вградената функција за опсег на Python. Функцијата range бара два аргументи, почеток и стоп, и опционално може да прифати трет аргумент за големината на чекорот кој, ако не е даден, стандардно е 1. Можете исто така да дадете само еден аргумент за опсегот; опсегот (x) е еквивалентен на опсегот (0, x, 1), и е низата 0,1,2,..., x−1.
Генерална форма : range (start, stop, step_size) Запомнете: стоп вредноста не е дел од низата. Опсезите може да се користат за пишување for-loops за броење.
4. Избирање на правилен тип јамка
Општо земено, for-јамките се она што сакате да го користите за итерирање врз низа. И for-јамките и while-јамките се соодветни за едноставни јамки за броење. Подобр е да се избере for-јамка со range за броење бидејќи бара помалку код пишување во споредба со јамка while. За други јамки без броење кои имаат комплицирани услови на јамка и/или не итерираат врз секвенците, while-јамките се веројатно најдобриот избор.
5. Бесконечни јамки Бесконечните јамки се јамки кои се повторуваат засекогаш. While-јамка чија состојба на јамка никогаш не може да стане False е бесконечна јамка.
Да се напише бесконечен for – loop е прилично тешко затоа што секвенците имаат конечна должина и се повторуваат само еднаш за секој елемент од секвенцата.