Введение. Объекты. Переменные. Основы ввода и вывода данных.¶
Основные определения¶
- Интерпретатор
Программа, реализующая построчный анализ, обработку и выполнение исходного кода программы.
- IDLE (читается — айдл)
(Integrated Development and Learning Environment) — это интегрированная среда разработки и обучения на языке Python.
Данные в языке Python представлены в форме объектов.
Каждый объект имеет идентификатор, тип и значение.
- Литерал
Форма записи для «фиксированного» представления значения объекта. Примеры литералов:
42,4.2,"Hello, World!".- Идентификатор
Однозначно идентифицирует объект. Его можно считать адресом области в памяти компьютера, где хранится объект.
- Тип данных
Тип определяет возможные значения и их смысл, операции, а также способы хранения значений типа.
- Переменная
Именованная ссылка на конкретный объект.
Оператор присваивания связывает переменную и объект. Пример:
>>> x = 5
Первую привязку переменной к объекту в программе называем определением и инициализацией переменной.
Изученные средства языка¶
-
print(a)¶ -
print(a, b, c) Функция принимает на вход объекты, преобразует их в строки и выводит в стандартный поток вывода.
Функция
printможет принимать дополнительные параметры, с ними мы познакомимся далее в курсе.Примеры использования:
# Функция может принимать литералы… print(42) print("answer") # … объекты answer = 42 print(answer) # …строки формата print(f"The answer is {answer}") import math.pi # Вывод числа π с 4 знаками после запятой print(f"Pi = {math.pi:.4f}")
-
input(prompt)¶ Выводит в стандартный поток вывода приглашение
prompt, а затем считывает введенные пользователем данные и возвращает строку.Примеры использования в IDLE:
>>> name = input("What is your name? ") What is your name? James >>> name 'James'
Пример ввода целых чисел:
a = int(input("a = ")) b = int(input("b = ")) s = a + b print(f"{a} + {b} = {s}")
-
type(object)¶ Возвращает тип объекта
object.Примеры использования:
>>> type(42) <class 'int'> >>> type(42.0) <class 'float'> >>> type("Python") <class 'str'>
-
int(x)¶ Принимает число или строку и возвращает целое число со знаком.
Примеры использования:
>>> int("42") 42 >>> int(42.5) 42
-
float(x)¶ Принимает число или строку и возвращает число с плавающей точкой.
Примеры использования:
>>> float("42") 42.0 >>> float("42.5") 42.5 >>> float(42) 42.0
О важности имен переменных¶
Что делает этот код?
import math
a = int(input('a: '))
b = int(input('b: '))
c = int(input('c: '))
d = int(input('d: '))
e = math.sqrt((c - a) ** 2 + (d - b) ** 2)
print(f"e: {e:.4f}")
Ответить на вопрос затруднительно. Можно рассказать о том, что происходит в
каждой строчке: какие функции вызываются, какие операции выполняются, но смысл
кода может оставаться неясным. Приложение ожидает на вход четыре каких-то
числа, выводит какое-то новое число. Понять смысл такого кода может оказаться
непросто из-за неудачного выбора имен переменных: a, b, c, d,
e. Такие имена легко печатать, но сложно помнить смысл, спрятанный за ними.
Переименуем наши переменные и изменим приглашения для ввода:
import math
point1_x = int(input('Point 1 x: '))
point1_y = int(input('Point 1 y: '))
point2_x = int(input('Point 2 x: '))
point2_y = int(input('Point 2 y: '))
distance = math.sqrt((point2_x - point1_x) ** 2 + (point2_y - point1_y) ** 2)
print(f"Distance: {distance:.4f}")
Смысл кода сразу же становится понятен: приложение ожидает на вход координаты двух точек и вычисляет расстояние между ними. Можно не помнить формулы или не понимать каждой строки кода — удачно выбранные имена переменных помогут сориентироваться.
Задачи¶
Реализовать приложение для вычисления периметра и площади прямоугольника. Приложение запрашивает у пользователя два целых числа — длины сторон прямоугольника. Пример работы приложения:
Input a: 5 Input b: 4 P = 18 S = 20
Напишите программу, которая считывает значения двух переменных
aиb, затем меняет их значения местами (то есть в переменнойaдолжно быть записано то, что раньше хранилось вb, а в переменнойbзаписано то, что раньше хранилось вa). Затем выведите значения переменных.Напишите программу, которая приветствует пользователя, выводя слово Hello, введенное имя и знаки препинания по образцу. Программа должна считывать в строковую переменную значение и писать соответствующее приветствие.
Пример:
Your name: Harry Hello, Harry!
Даны два целых числа:
aиb. Найти их среднее арифметическое по формуле:\[\frac{a + b}{2}\]Электронные часы показывают время в формате часы(h):минуты(m):секунды(s), найти количество секунд прошедшее с начала суток.
Дополнительные задачи¶
Напишите программу, которая по данному числу
nот 1 до 9 выводит на экранnпингвинов. Изображение одного пингвина имеет размер 5×9 символов, между двумя соседними пингвинами также имеется пустой (из пробелов) столбец. Для упрощения рисования скопируйте пингвина из примера в среду разработки.Пример:
Penguins: 3 _~_ _~_ _~_ (o o) (o o) (o o) / V \ / V \ / V \ /( _ )\ /( _ )\ /( _ )\ ^^ ^^ ^^ ^^ ^^ ^^
Неспокойно сейчас на стапелях шестого дока межгалактического порта планеты Торна. Всего через месяц закончится реконструкция малого броненесущего корвета «Эния». И снова этому боевому кораблю и его доблестной команде предстоят тяжелые бои за контроль над плутониевыми рудниками Сибелиуса. Работа не прекращается ни на секунду, лазерные сварочные аппараты работают круглые сутки. От непрерывной работы плавятся шарниры роботов-ремонтников. Но задержаться нельзя ни на секунду. И вот в этой суматохе обнаруживается, что термозащитные панели корвета вновь требуют срочной обработки сульфидом тория. Известно, что на обработку одного квадратного метра панели требуется 1 нанограмм сульфида. Всего необходимо обработать
Nпрямоугольных панелей размеромAнаBметров. Вам необходимо как можно скорее подсчитать, сколько всего сульфида необходимо на обработку всех панелей «Энии». И не забудьте, что панели требуют обработки с обеих сторон.Решите задачу 2 для целых чисел без использования дополнительной переменной.
Домашнее задание¶
Установить Python на домашний ПК. Официальный сайт: https://www.python.org/
Программа считывает 2 целых числа. Вычислите их сумму, разность, произведение, частное.
Дана длина ребра куба
a. Найти объем кубаVи площадь его поверхности \(S = 6 \cdot a^2\).