Ветвления и циклы. Питон

Содержание

Слайд 2

if в C и в Python

По сравнению с языком C и другими

if в C и в Python По сравнению с языком C и
СИ-подобными языками, оператор if в Python менее загроможден, чтобы облегчить жизнь программистов, требуя набора меньшего объема символов.

if (x < y)
{
x = 1;
y = 2;
}

if x < y:
x = 1
y = 2

Слайд 3

Особенности синтаксиса

Новым, по сравнению с языком C, компонентом синтаксиса if в Python

Особенности синтаксиса Новым, по сравнению с языком C, компонентом синтаксиса if в
является символ двоеточия.
Все составные операторы в Python следуют общему шаблону:
строка_заголовка: вложенный_блок_кода

if x < y:
x = 1
y = 2

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

Слайд 4

Отступы и нужный if в C

К какому из операторов if относится else

Отступы и нужный if в C К какому из операторов if относится
(язык C)?

if (x)
if (y)
оп_1;
else
оп_2;

Ответ: if(y). Блок else в языке C относится к последнему оператору if.
Неправильный ответ можно дать, благодаря неверным (логически, но не синтаксически) отступам перед else для языка С.
То есть для понятности кода, отступы надо изменить, но язык позволяет и такое написание.

Слайд 5

Отступы и нужный if в Python

В языке Python подобная ошибка возникнуть не

Отступы и нужный if в Python В языке Python подобная ошибка возникнуть
может, так как блок else относится не к последнему оператору if, а к соответствующему по отступам:

if x:
if y:
оп_1
else:
оп_2

В данном случае else относится к первому оператору if x.

Слайд 6

Многочисленные проверки

Оператор if языка Python способен заменить оператор switch языка СИ, благодаря

Многочисленные проверки Оператор if языка Python способен заменить оператор switch языка СИ,
одному, или более необязательных блоков elif:

if условие_1:
оп_1
elif условие_2:
оп_2
else:
оп_3

switch (x)
case сост_1:
оп_1;
case сост_2:
оп_2;
default:
оп_3;

Данная конструкция, отчасти, может быть более функциональной, так как проверки условия оператора if разнообразнее простой проверки на равенство оператора switch-case.

Слайд 7

Область видимости Python

В языке Python операторы ветвлений и циклов не создают собственную

Область видимости Python В языке Python операторы ветвлений и циклов не создают
область видимости, как это происходит в операторах ветвлений, циклов и блоках кода {} в языке C:

if 1:
x = 55
print(x)
55
Ошибки нет.

if (1)
{
int x = 55;
}
printf("%d", x);
error: 'x' undeclared

Слайд 8

Оператор while

Оператор while многократно выполняет блок операторов до тех пор, пока проверка

Оператор while Оператор while многократно выполняет блок операторов до тех пор, пока
в заголовочной части оценивается как истин­ное значение:

x = 'hello there'
while x:
print(x)
x = x[1:]

Данный пример нуждается в пояснении:
x = x[1:] — срез укорачивает строку на один первый символ
while x — любой непустой объект считается истиной, цикл будет выполняться пока строка не опустеет

Слайд 9

Общий синтаксис оператора while

Общий синтаксис оператора несколько отличается от языка СИ:

while условие:
операторы
else:
операторы

Цикл

Общий синтаксис оператора while Общий синтаксис оператора несколько отличается от языка СИ:
может содержать блок else — необязательную часть. Ее операторы выполняются, если выход из цикла произошел «планово» (не с помощью оператора break).

Слайд 10

for в языке Python

Оператор for в языке Python, предназначен для прохода по

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

for (инициализация; условия; увеличение)
{
делаем что угодно;
}
for переменная in объект
действия

for в языке C

for в Python

Слайд 11

Пример работы оператора for

Как использовать оператор for легче понять из примера:

В результате

Пример работы оператора for Как использовать оператор for легче понять из примера:
выполнения примера будет выведено сообщение:
«hheelllloo tthheerree»

for i in 'hello there':
print(i * 2, end='')

Оператор for языка Python во многом напоминает оператор foreach, таких языков как Java и C#, однако может содержать блок else подобно оператору while в Python.

Слайд 12

for i in range(n)

Для повторения цикла некоторое заданное число раз n можно

for i in range(n) Для повторения цикла некоторое заданное число раз n
использовать цикл for вместе с функцией range:

Функция range может также принимать не один, а два или три параметра. Вызов range(a, b) означает, что индексная переменная будет принимать значения от a до b - 1.
Третий параметр означает величину изменения (шаг) индексной переменной.

for i in range(3):
print(i)

Слайд 13

continue и break

Данные операторы аналогичны одноименным операторам СИ:
Оператор break переходит за пределы

continue и break Данные операторы аналогичны одноименным операторам СИ: Оператор break переходит
ближайшего заключающего его цикла, то есть начинают выполняться строки кода после всего оператора цикла, в котором расположен этот break.
Оператор continue переходит в начало ближайшего заключающего цикла на строку заголовка цикла, то есть позволяет игнорировать все тело цикла, находящееся после continue.

for i in 'hello world':
if i == 'a':
break
else:
print('Буквы a в строке нет')

Слайд 14

Задача

Определить число знаков (порядок) целого положительного числа, не используя методы str и len.

x

Задача Определить число знаков (порядок) целого положительного числа, не используя методы str
= 88005553535 # исходное число
res = 0
while x: # аналог на C: while (x != 0)
res += 1 # инкремент (++res для C)
x //= 10 # краткая форма записи для x = x // 10
print(res)
Имя файла: Ветвления-и-циклы.-Питон.pptx
Количество просмотров: 109
Количество скачиваний: 1