python pycharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/python_pycharm_02.pdf ·...
TRANSCRIPT
![Page 1: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/1.jpg)
Python_PyCharm_02
Трубочкина Н.К.
2018
![Page 2: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/2.jpg)
ЧТО ТАКОЕ АЛГОРИТМ?
1) последовательность простых шагов
2) поток управляющего процесса, который указывает, когда выполняется каждый шаг
3) средство определения времени остановки
1 + 2 + 3 = алгоритм!
![Page 3: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/3.jpg)
ЧИСЛЕННЫЙ ПРИМЕР
g g*g x/g (g+x/g)/2
3 9 16/3 4.17
4.17 17.36 3.837 4.0035
4.0035 16.0277 3.997 4.000002
Квадратный корень из числа x равен y, или y * y = x Алгоритм для вычисления квадратного корня из числа x (16):
1) Начните с предположения, g (корень)=3. 2) Если g * g достаточно близко к x, остановитесь и скажите, что g, это ответ. 3) В противном случае сделайте новое предположение, усредняя g и x / g (g=(g+x/g)/2) 4) Используя новое предположение, повторите процесс 2-3
![Page 4: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/4.jpg)
СОЗДАНИЕ АЛГОРИТМОВ
• язык программирования обеспечивает набор примитивных операций
• выражения представляют собой сложные, но легальные комбинации примитивов на языке программирования
• выражения и вычисления имеют значения на языке программирования
![Page 5: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/5.jpg)
АСПЕКТЫ ЯЗЫКОВ
Примитивные конструкции
• Английский: – слова
• Язык программирования: – числа,
– строки,
– простые операторы
![Page 6: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/6.jpg)
Синтаксис • Английский: запись
– «мальчик-кошка-собака» - синтаксически не действительна
– «кот обнимает мальчика» - синтаксически действителена (валидна)
• Язык программирования: запись – «привет» 5 - синтаксически не действительна – 3.2 * 5 синтаксически действителена (валидна)
![Page 7: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/7.jpg)
Статическая семантика Синтаксически действующие строки имеют смысл: • Английский:
«Я голоден» - синтаксически действителен, но статическая семантическая ошибка
• Язык программирования: 3.2 * 5 - синтаксически действительная запись 3+ "hi" - статическая семантическая ошибка
![Page 8: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/8.jpg)
ПРОГРАММЫ НА ПИТОНЕ • программа представляет собой последовательность
определений и команд • определения оценены • команды, выполняемые интерпретатором Python в
оболочке – команды (инструкции) инструктируют интерпретатор делать что-то – можно вводить непосредственно в оболочку, хранящуюся в
файле, который считывается в оболочку и выполняется
![Page 9: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/9.jpg)
ОБЪЕКТЫ Программы манипулируют объектами данных • объекты имеют тип, определяющий виды действий,
которые могут делать с ними программы – Анна - человек, поэтому она может ходить, говорить и т. д. – Чубакка - это «непонятно-кто», который может разыграть,
«непонятно-что» и т. д.
• Объекты: – скалярные (нельзя подразделить) – нескалярные (имеют внутреннюю структуру, к которым
можно получить доступ)
![Page 10: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/10.jpg)
ОБЪЕКТЫ СКАЛЯРНЫЕ • int - целые числа, например, 5 • float - действительные числа, например, 3,27 • bool - логические значения True и False • NoneType - имеет одно значение, None • можно использовать type(), чтобы увидеть тип
объекта:
![Page 11: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/11.jpg)
КОНВЕРСИИ ТИПА (CAST)
Можно конвертировать объект одного типа в другой
• float (3) - преобразует целое число 3 в действительное с плавающей точкой 3.0
• int (3.9) преобразует действительное с плавающей точкой 3.9 в целое 3
![Page 12: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/12.jpg)
ПЕЧАТЬ В КОНСОЛИ
Чтобы показать вывод кода пользователю, используйте команду print
In [11]: 3+2
Out[11]: 5
In [12]: print(3+2)
5
Внутри ячейки
На консоли
![Page 13: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/13.jpg)
ВЫРАЖЕНИЯ
• Можно объединить объекты и операторы для формирования выражений
– выражение имеет значение, которое имеет тип
• синтаксис простого выражения <object> <operator> <object>
![Page 14: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/14.jpg)
Операторы для ints и floats
![Page 15: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/15.jpg)
ПРОСТЫЕ ОПЕРАЦИИ • Выражения в круглых скобках, выполняются
первыми • приоритет операторов без круглых скобок
– ** – * – /
• + и - выполняются слева направо, как показано в выражении
![Page 16: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/16.jpg)
ПРИСВОЕНИЕ ПЕРЕМЕННЫМ ЗНАЧЕНИЙ
• знак равенства - это присвоение значения имени переменной pi = 3.14159
pi_approx = 22/7
– значения, хранятся в памяти компьютера
– присваивание связывает имя со значением
– получить значение, связанное с именем или переменной, можно путем вызова имени, набрав pi
![Page 17: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/17.jpg)
АБСТРАКТНЫЕ ВЫРАЖЕНИЯ
Зачем давать имена значениям выражений?
• повторное использование имен вместо значений
• проще изменить код позже
pi = 3.14159
radius = 2.2
area = pi*(radius**2)
![Page 18: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/18.jpg)
ПРОГРАММИРОВАНИЕ против MATH
В программировании вы не «решаете для x»,
pi = 3.14159
radius = 2.2
# area of circle
area = pi*(radius**2)
radius = radius+1
![Page 19: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/19.jpg)
ИЗМЕНЕНИЕ ЗНАЧЕНИЙ • можно повторно использовать имена переменных в новых операторах
присваивания
• предыдущее значение может сохраняться в памяти, но теряет привязку
• значение для области не изменяется, пока вы не сообщите компьютеру, чтобы выполнить расчет снова
![Page 20: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/20.jpg)
Проверим в PyCharm
![Page 21: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/21.jpg)
ЧТОБЫ НАЧАТЬ РАБОТАТЬ В PYCHARM…
Практика
![Page 22: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/22.jpg)
Откройте Pycharm (1) и создайте новый проект (2)
1
2
![Page 23: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/23.jpg)
Задайте имя проекта (3) и проверьте наличие интерпритатора python.exe (4), нажмите кнопку «Создать» (5)
3
4
5
![Page 24: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/24.jpg)
Интерфейс Pycharm
![Page 25: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/25.jpg)
6.Выделите папку проекта 7. Создайте новый файл: File-New-Python File
6
7
![Page 26: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/26.jpg)
Задайте имя файла (8) и ОК
8
![Page 27: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/27.jpg)
9. Введите скрипт
print('Hello World!')
10. Выполните его (Run)
9
![Page 28: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/28.jpg)
Чтобы увеличить размер шрифта: File-Settings-Editor-Font Задайте размер ОК
![Page 29: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/29.jpg)
Чтобы изменить цвет фона: File-Settings-Editor-Color Scheme Выберите, например, Github ОК
![Page 30: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/30.jpg)
Тогда ваш интерфейс станет светлым с крупным шрифтом в рабочем поле
![Page 31: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/31.jpg)
СТРОКИ • Содержат: буквы, специальные символы, пробелы, цифры • Демонстрируются в кавычках или одинарных кавычках
hi = "hello there" • конкатенации строк
name = "ana" greet = hi + name greeting = hi + ""+ name
• выполните некоторые операции в строке, как определено в документации
Python
silly = hi + ""+ name * 3
![Page 32: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/32.jpg)
Упражнение 1 «Строки»
![Page 33: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/33.jpg)
Вывод: print
• Используется для вывода данных на консоль
• Ключевое слово print x = 1
print(x)
x_str= str(x)
print("my fav numis", x, ".", "x =", x)
print("my fav numis " + x_str+ ". " + "x = " + x_str)
![Page 34: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/34.jpg)
Упражнение 2 «Вывод»
![Page 35: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/35.jpg)
INPUT/OUTPUT: input("") • input("") позволяет распечатать все, что есть в кавычках • связывает строковое значение с переменной
text = input("Type anything... ") print(5*text)
• input("") дает вам строку, поэтому она может использоваться при работе с числами
num= int(input("Type a number... ")) print(5*num)
![Page 36: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/36.jpg)
Упражнение 3. «Ввод»
![Page 37: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/37.jpg)
ОПЕРАЦИИ СРАВНЕНИЯ ДЛЯ int,float, string
i и j – имена переменных Значение результата сравнения True или False (Boolean)
• i> j • i>= j • i< j • i<= j • i == j тест равенства, True, если i такой же, как j • i! = j тест неравенства, True, если i не то же самое, что j
![Page 38: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/38.jpg)
Упражнение 6
«Остаток»
![Page 39: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/39.jpg)
ЛОГИЧЕСКИЕ ОПЕРАТОРЫ
a и b являются именами переменных (с булевыми значениями)
• not a True если a False/False если a is True
• a and b True если оба True
• a or b True если хотя бы один True
![Page 40: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/40.jpg)
Пример на сравнение
pset_time= 15
sleep_time= 8
print(sleep_time> pset_time)
derive = True
drink = False
both = drink and derive
print(both)
![Page 41: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/41.jpg)
![Page 42: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/42.jpg)
Пр
им
ер «
По
иск в
лаб
ир
ин
те»
![Page 43: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/43.jpg)
КОНТРОЛЬ ПОТОКА - ВЕТВЛЕНИЕ if <condition 1>: <expression 1> <expression 2> ... if <condition 2>: <expression 3> <expression 4> ... else: <expression 5> <expression 6> ...
if <condition 3>: <expression 7> <expression 8> ... elif<condition 4>: <expression 9> <expression 10> ... else: <expression 11> <expression 12> ...
<condition>имеет значение True или False вычисляем выражения в блоке, если <condition> True
![Page 44: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/44.jpg)
Сдвиг Вопрос в Python: как вы обозначаете блоки кода?
![Page 45: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/45.jpg)
Упражнение 4 «Ввод / вывод с условным оператором»
![Page 46: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/46.jpg)
Ко
мен
тари
и п
о-р
усски
![Page 47: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/47.jpg)
y=0
![Page 48: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/48.jpg)
while
while <condition>: <expression> <expression> ... <condition> определяется в Boolean если <condition> is True, выполните все шаги внутри блока кода вычислите <condition> снова повторяйте до тех пор пока <condition> не станет False
![Page 49: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/49.jpg)
Пример (while)
n = 0
while n < 5:
print(n)
n = n+1
![Page 50: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/50.jpg)
![Page 51: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/51.jpg)
while и for # более сложный код с циклом while
n = 0 while n < 5: print(n) n = n+1
# то же самое с помощью for n = 0 for n in range(5): print(n)
![Page 52: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/52.jpg)
![Page 53: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/53.jpg)
for
for <variable> in range(<some_num>):
<expression>
<expression> ...
• на каждом шаге цикла, <variable> принимает значение
• на первом шаге, <variable> стартует с наименьшего значения
• на следующем шаге <variable> принимает «предыдущщее значение» + 1
• etc.
![Page 54: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/54.jpg)
break • сразу же выходит из любого цикла, в котором он находится
• отображает оставшиеся выражения в кодовом блоке
• выискивает только самый внутренний цикл!
while <condition_1>:
while <condition_2>:
<expression_a>
break
<expression_b>
<expression_c>
![Page 55: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/55.jpg)
break Пример
for i in range(5, 11, 2): mysum += i if mysum == 5: break mysum += 1 print(mysum)
Выведет из цикла со значением mysum 5
![Page 56: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/56.jpg)
range(start,stop,step) По умолчнию стартовое значение start = 0 и step = 1 Цикл останавливается, когда stop -1
mysum = 0 for i in range(10): mysum += i print(mysum) mysum = 0 for i in range(7, 10): mysum += i print(mysum) mysum = 0 for i in range(5, 11, 2): mysum += i if mysum == 5: break mysum += 1 print(mysum)
![Page 57: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/57.jpg)
![Page 58: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/58.jpg)
for против while for
• нужно знать число итераций
• может закончиться рано через перерывание
• использует счетчик
• можно переписать цикл for с использованием цикла while
while
• неограниченное количество итераций
• рано может закончиться
• может использовать счетчик, но нужно его инициализировать перед циклом и увеличивать его внутри цикла
• нельзя переписать цикл while с
использованием цикла for
![Page 59: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/59.jpg)
Пример #################### ## EXAMPLE: perfect squares #################### ans = 0 neg_flag = False x = int(input("введите целое число:")) if x < 0: neg_flag = True while ans**2 < x: ans = ans + 1 if ans**2 == x: print("Корень квадратный из ", x, "это", ans) else: print(x, "Это не квадрат целого числа") if neg_flag: print("Минуточку... может быть ", -x, "?")
![Page 60: Python PyCharm 02 - nadin.miem.edu.runadin.miem.edu.ru/!!!_lec_2018_pdf/Python_PyCharm_02.pdf · ЧИСЛЕННЫЙ ПРИМЕР g g*g x/g (g+x/g)/2 3 9 16/3 4.17 4.17 17.36 3.837](https://reader034.vdocuments.net/reader034/viewer/2022052613/5f2bc495c9d4922d4c6369f6/html5/thumbnails/60.jpg)
Задание
• Разберите все примеры из лекции в PyCharm
• Попробуйте самостоятельно модифицировать коды примеров и отслеживайте результаты в PyCharm