Курс: Python
Лекция: Проба пера, условный оператор, циклы
Для начала нужно проверить работу среды. И поэтому проверим ее на "Hello, World"
print("Hello world!")
Если проблем не возникло, то проверим работу интерактивного ввода данных и работу кодировки:
name = input ("Ваше имя ") print("Привет, ", name,"!")
Условный оператор
Попробуем синтаксис if
:
a = input ("Первое целое число ") b = input ("Второе целое число ") if (int(b) !=0): print(a,"/",b,"=",int(a)/int(b))
И вариант с else
:
a = input ("Первое целое число ") b = input ("Второе целое число ") if (int(b) !=0): print(a+"/"+b+"=",int(a)/int(b)) else: print ('Ошибка: Деление на ноль недопустимо.')
Обратите внимание на различие в поведении +
и ,
внутри конструкции print
.
В языке Python нет конструкции switch case
. Во многих случаях помогает вариант if-elif-else
:
name = input ("Ваше имя ") if (name == "Ваня"): print ("Ваш пол мужской") elif (name == "Аня"): print ("Ваш пол женский") else: print ("Не могу определить ваш пол")
Задание 1.1. Калькулятор v1
Необходимо запросить у пользователя два числа и операцию. В качестве операций вводятся символы
+
, -
, *
, /
. Нужно вывести результат вычислений.
Тернарный оператор
В языке python есть тернарный оператор if else:
a = 1 if b>2 else 2
Переменной a
будет присвоено значение 1 если b>2
иначе, будет присвоено 2.
Циклы
Из стандартных циклов в Python есть цикл while
:
i = 1 while (i<=10): print (i) i += 1
Цикл for
тоже есть, но по сути это аналог цикла foreach
. Например можно вывести значения
элементов списка. Необычно, что элементами списка могут быть переменные разных типов. Это видно на примере.
a = [1,2,"три",4] # При помощи квадратных скобок создаются списки for i in a: print (i)
Для работы с привычным циклом for
придется воспользоваться конструкцией for i in range
.
a = [1,2,"три",4] #range(3) последовательно вернет числа 0,1,2 for i in range(3): print (a[i])
Range
кроме Range(stop)
имеет еще два варианта записи Range(start,stop)
и Range(start,stop,step)
.
Задание 1.2. Таблица Пифагора
Вывести таблицу Пифагора с учетом выравнивания столбцов:
2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 5 10 15 20 25 30 35 40 45 6 12 18 24 30 36 42 48 54 7 14 21 28 35 42 49 56 63 8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81
Так же как и в других языках в python есть конструкции continue
и break
:
for i in range (15,0,-1): if (i%2 == 0): continue print (i) if (i**2 ==9): break
В циклах python есть конструкция else
, которая выполняется если цикл не был завершен командой break
.
n = int(input("Целое число ")) for i in range (n,2*n): s = i**(0.5) if (s-int(s)==0): print ("Первый корень",i) break else: print ("Между",n,"и",2*n,"квадратных корней нет")
Задание 1.3. Треугольные числа
Проверить является ли введенное пользователем число треугольным.