Введение. В мире программирования поток управления относится к порядку, в котором выполняются операторы. Это позволяет нам диктовать поток нашей программы, делая ее более динамичной и реагирующей на различные условия и входные данные.

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

Если вы не читали статью «переменные и типы данных», вам следует сначала выполнить ее, а затем перейти к «потоку управления». Тогда вы будете плыть по течению и хорошо понимать. Вы можете проверить это:

В этой статье мы углубимся в функции потока управления Python, охватив условные операторы, циклы и ключевые слова потока управления.

1. Условные операторы

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

а) оператор if:

Оператор «если» — это простейшая форма условного оператора. Он выполняет блок кода, если заданное условие истинно.

age = 20
if age >= 18:
    print("You are eligible to vote.")

# Output: You are eligible to vote.

Здесь оператор «если» проверяет, больше или равно ли значение переменной «возраст» 18. Если условие истинно, оно печатает сообщение «Вы имеете право голосовать». В противном случае он переходит к следующему блоку кода.

б) иначе заявление:

Оператор «else» позволяет нам указать блок кода, который будет выполнен, если условие в операторе «if» ложно.

age = 15
if age >= 18:
    print("You are eligible to vote.")
else:
    print("You are not yet eligible to vote.")

# Output: You are not yet eligible to vote.

В этом случае, поскольку значение «возраст» равно 15 (меньше 18), условие «если» ложно, и выполняется код внутри блока «иначе». Он печатает сообщение Вы еще не имеете права голосовать.

в) оператор Элиф:

Оператор «elif» используется, когда мы хотим проверить несколько условий. Это означает else if и позволяет нам связать вместе несколько условий.

score = 85
if score >= 90:
    print("Your grade is A.")
elif score >= 80:
    print("Your grade is B.")
elif score >= 70:
    print("Your grade is C.")
else:
    print("Your grade is D.")

# Output: Your grade is B.

В этом фрагменте кода программа оценивает балл и выводит соответствующую оценку в зависимости от условий. Если результат равен 85, то утверждение «elif» «score≥80» истинно, и оно печатает «Ваша оценка B».

2. Петли

Циклы используются для многократного повторения блока кода. Они позволяют нам выполнять повторяющиеся задачи и более эффективно обрабатывать данные.

Python предоставляет два основных типа циклов: циклы for и циклы while.

а) для цикла:

Цикл for перебирает последовательность элементов и выполняет блок кода для каждого элемента.

fruits = ["apple", "banana", "orange"]
for fruit in fruits:
    print(fruit)

# Output
apple
banana
orange

# or if you want it to come in one line with a space-separated, then:
for fruit in fruits:
    print(fruit, end=" ")

# Output: apple banana orange 
# You can modify according to your needs and fun!😀

В этом фрагменте кода цикл for выполняет итерацию по каждому элементу в списке фруктов и печатает его.

б) цикл while:

Цикл while продолжает выполнять блок кода до тех пор, пока заданное условие остается истинным.

count = 0
while count < 5:
    print(count)
    count += 1

# Output:
0
1
2
3
4


"""
Here if you won't increments it by 1 (count += 1), then 
it will continuously be throwing 0 0 0 0 0... until you stop it.
When you will stop running it'll say "KeyboardInterrupt"
Don't do this, else your system can be crashed too!
"""

В этом фрагменте кода цикл while выполняется до тех пор, пока значение count не станет меньше 5. Он печатает значение count и увеличивает его на 1 на каждой итерации.

3. Ключевые слова потока управления

Python предоставляет дополнительные ключевые слова потока управления, которые позволяют нам изменять поведение циклов и условных операторов.

перерыв:

Ключевое слово break используется для преждевременного выхода из цикла. При обнаружении он немедленно завершает цикл и возобновляет выполнение со следующего оператора вне цикла.

numbers = [1, 2, 3, 4, 5]
for number in numbers:
    if number == 3:
        break
    print(number)

# Output: 
1
2


# But if you will do something like this:
for number in numbers:
    if number == -3:
        break
    print(number)

# output:
1
2
3
4
5

# Modify the code & try yourself, get errors and see how exciting is this!

В этом фрагменте кода цикл завершится, когда он встретит число 3. Возьмите этот код, посмотрите, что он запустит, затем внесите свои собственные изменения, это нормально получать ошибки, это еще один момент, когда вы решаете что-то свое после получения ошибки. Вы можете изменить в соответствии с вашими потребностями и удовольствия! 😀

б) продолжить:

Ключевое слово «продолжить» используется для пропуска остальной части кода в цикле для текущей итерации и перехода к следующей итерации.

numbers = [1, 2, 3, 4, 5]
for number in numbers:
    if number == 3:
        continue
    print(number)

# output:
1
2
4
5

В этом фрагменте кода, когда цикл достигает числа 3, он пропускает оператор «print» и переходит к следующей итерации.

в) пройти:

Ключевое слово pass используется в качестве заполнителя, когда оператор синтаксически обязателен, но не должен ничего делать. Он действует как нулевая операция и позволяет коду проходить без каких-либо действий.

number = 10
if number > 5:
    pass
else:
    print("Number is less than or equal to 5.")

# Output: It will simply pass the function and won't return anything!

В этом фрагменте кода оператор «pass» используется для указания того, что никаких действий не требуется, когда условие истинно. Если число меньше или равно 5, выполняется оператор «print».

4. Вложенные операторы потока управления

Одним из мощных аспектов потока управления в Python является возможность вкладывать операторы потока управления друг в друга.

Эта вложенность позволяет нам создавать более сложные структуры принятия решений и циклов.

grade = 75
if grade >= 60:
    if grade >= 90:
        print("You achieved an A grade!")
    elif grade >= 80:
        print("You achieved a B grade!")
    else:
        print("You achieved a C grade.")
else:
    print("You did not pass the exam.")

# Output: You achieved a C grade.

В этом фрагменте кода мы вложили операторы if, elif и else во внешний оператор if. В зависимости от значения «grade» будет выполняться соответствующий блок кода. Это демонстрирует гибкость и выразительность потока управления в Python.

5. Управление потоком в реальных приложениях

Поток управления — это фундаментальная концепция, играющая решающую роль в различных реальных приложениях.

Давайте рассмотрим несколько сценариев, в которых обычно используется поток управления!

а) Проверка пользовательского ввода:

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

age = int(input("Enter your age: "))
if age >= 18:
    print("You are eligible to enter.")
else:
    print("You are too young to enter.")

# Input: Enter your age: 20              
# Output: You are eligible to enter.

# Input: Enter your age: 14             
# Output: You are too young to enter.

В этом фрагменте кода программа предлагает пользователю ввести свой возраст. Оператор if проверяет, больше или равен ли возраст 18 лет, и отображает соответствующее сообщение.

б) Фильтрация и обработка данных:

Поток управления часто используется в задачах фильтрации и обработки данных. Это позволяет нам перебирать наборы данных, применять определенные условия и выполнять действия на основе результатов.

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_sum = 0
odd_sum = 0
for number in numbers:
    if number % 2 == 0:
        even_sum += number
    else:
        odd_sum += number
print("Sum of even numbers:", even_sum)
print("Sum of odd numbers:", odd_sum)

# Output:
Sum of even numbers: 30
Sum of odd numbers: 25

В этом фрагменте кода цикл «for» перебирает каждое число в списке «numbers». Оператор if проверяет, является ли число четным или нечетным, и соответственно накапливает сумму. Наконец, он печатает сумму четных чисел и сумму нечетных чисел.

c) Управление потоком программы:

Ключевые слова потока управления, такие как «break» и «continue», позволяют нам управлять потоком выполнения внутри циклов. Они помогают нам оптимизировать наши программы и избегать ненужных итераций.

  • перерыв:
names = ["Nibe", "Dita", "Nibedita", "NS"]
for name in names:
    if name == "Nibedita":
        break
    print(name)

# Output:
Nibe
Dita
  • продолжить:
names = ["Nibe", "Dita", "Nibedita", "NS"]
for name in names:
    if name == "Nibedita":
        continue
    print(name)

# Output:
Nibe
Dita
NS

Заключение.Поток управления – это фундаментальная концепция программирования, и Python предоставляет широкий набор функций для эффективного управления им. В этой статье мы рассмотрели условные операторы, в том числе «если», «иначе» и «элиф», которые позволяют нам принимать решения на основе условий. Мы также обсудили циклы, такие как for и while, которые позволяют нам перебирать последовательности и повторять блоки кода.

Если вам нужен четкий обзор «полного Python», один тип всей программы Python; то можно глянуть:

Кроме того, мы рассмотрели ключевые слова потока управления, такие как «break», «continue» и «pass», которые обеспечивают дополнительный контроль и гибкость в циклах и условных операторах.

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

Если вы хотите стать Data Scientist, вам могут быть интересны:

Счастливого изучения! 🙂