Вывод данных

Для вывода данных используется команда print(“текст”). Любой текст предназначенный для “Человека” пишется в “ или ‘, программа его не обрабатывает и выводит в том же виде.


# Пример использования Print()
print("Это моя первая программа")


# Вывод
>>Это моя первая программа

Арифметические действия (операторы)

Но также в команде print() можно написать сразу код, который выполнится и мы увидим итог его выполнения. Для примера возьмем арифметические действия классические + - * /, а также рассмотрим несколько необычных ** // %


Сложение (+): складывает два значения.
print(3 + 5)  # Вывод: 8

Вычитание (-): вычитает второе значение из первого.
print(10 - 5)  # Вывод: 5

Умножение (*): умножает два значения.
print(7 * 3)  # Вывод: 21

Деление (/): делит первое значение на второе. Результат всегда является числом с плавающей точкой.

print(20 / 4)  # Вывод: 5.0
print(9 / 3) # Вывод: 3.0
print(10 / 3) # Вывод: 3.33

#почему ответ получился 3.0, а не просто 3 мы разберем чуть позже.

Теперь разберем с вами более сложные операторы.


# Возведение в степень (**): возводит первое значение в степень второго.
print(2 ** 3)  # Вывод: 8

# Остаток от деления (%): возвращает остаток от деления первого значения на второе.
print(10 % 3) # Ответ 1. Ближайшее число к 10, которое делится на 3 без остатка, это 9. Поэтому остаток от деления равен 10 - 9 = 1

# Целочисленное деление
print(7 / 2)  # 3.5
print(7 // 2) # Ответ 3, оператор // отбрасывает дробную часть
#почему ответ получился 3.0, а не просто 3 мы разберем чуть позже.

Ввод данных

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

В Python для ввода данных пользователем используется функция input().

Когда эта функция вызывается, программа останавливается и ждет, пока пользователь не введет текст. После того как пользователь нажимает Enter, введенный текст возвращается функцией input() как строка. Функция input() сама по себе не выведет результат, если вы не используете ее вместе с какой-либо другой операцией, такой как присваивание значения переменной или использование в рамках выражения. Она просто ожидает ввода пользователя и возвращает введенное значение.


#Пример работы
input("Введите что-нибудь: ")

При выполнении этой программы вы увидите текст “Введите что-нибудь: “ и сможете ввести текст. Однако, после ввода текста программа просто завершится, потому что мы ничего не делаем с введенным значением. Чтобы увидеть введенное значение, мы могли бы сохранить его в переменной и затем вывести эту переменную:


#Пример работы
text = input("Введите что-нибудь: ")
print("Вы ввели:", text)

Переменные

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



# Записываем значение в переменную
message = "Hello, World!"

# Читаем значение переменной
print(message)  # Вывод: Hello, World!

# Изменяем значение переменной
message = "Hello, Python!"
print(message)  # Вывод: Hello, Python!


x = 5 # переменная x хранит целое число 5
greeting = "Hello, World!"  # переменная greeting хранит строку "Hello, World!"
Вы также можете изменить значение переменной, присвоив ей новое значение:
x = 10
print(x)  # Вывод: 10

# Узнать у пользователя его имя и поприветствовать его
print("Введите ваше имя: ")
name = input()
print("Привет, " + name + "!")


>>> Как тебя зовут?
>>> Иван
>>> Привет, Иван

В этом примере input(“Введите ваше имя: “) выводит сообщение “Введите ваше имя: “ и ожидает, пока пользователь не введет свое имя и не нажмет Enter. Введенное имя затем присваивается переменной name, которую мы затем используем в функции print() для вывода приветствия.

Константа

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

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


MY_CONSTANT = 'моя «константа»' # Переменная, которую не стоит изменять
PI = 3.14159
GRAVITY = 9.8

А теперь давайте познакомимся с дополнительными возможностями команд input() и print(). Для удобства мы можем не использовать лишнюю команду print, выведя тот же самый текст в input. А также команду print напишем более корректно и удобно.


# Узнать у пользователя его имя и поприветствовать его
name = input("Как тебя зову? ") # Выводим текст и ждем ввод текста от пользователя
print (f"Привет, {name}, рад тебя видеть") # Выводим переменную, в которой храним имя

# Это называется f-string форматированием в Python.
# Команда print(f"Текст {переменна}") - делает код более читабельным и упрощает вставку переменных в строки.

Типы переменных

Теперь когда мы разобрались зачем нужны переменные, давай посмотрим какие они бывают и в чем их особенность. В Python есть 4 примитивных типа данных:


# INT (целые числа)
age = 18

# FLOAT (дробные числа)
# они всегда имеют формат 0.0
# даже если число целое
price = 2.5
price = 2.0
price = 0.5

# STR (строки)
# записываются в кавычках
fruit = 'apple'
fruit = 'apple 12'
fruit = '12' # даже это строка

# bool (правда или ложь)
# всего два значения: True и False
like = True
like = False
# Иногда можно и так записывать
like = 1 # true
like = 0 # false

Правила написания кода, как можно и как нельзя делать.

В питоне принят стандарт PEP8 для написания кода. Python не требует указания типа переменой, он сам определяет в зависимости от введенных в нее данных. PEP8 рекомендует следующие правила:

  • имя переменной может состоять только из букв, цифр и знака подчёркивания;
  • имя не может начинаться с цифры;
  • имя не может содержать специальных символов @, $, %.

Для названия переменных принято использовать один метод:

  • snake_case — для функций и переменных - для разделения используется подчеркивание (my_super_var)
  • CamelCase — для классов - каждое слово в переменной пишется с заглавной буквы (MySuperVar)

# Правильно
age = 19
year = '2000'
name = 'Ivan'
my_name = "Maxim" #snake_case
MyName = 'Vity' #CamelCase
isActive = True

# Рекомендуется
name = 'Иван Петров'
first_name = 'Иван'
last_name = 'Петров'

# Не рекомендуется
x = 'Иван Петров'
y = 'Иван'
z = 'Петров'

# name и Name - это разные переменны
name = 'Petr'
Name = 'Ivan'
# name и Name - это разные переменны

# Неправильно
12name = 'Ivan'
@age = 12
город = "Moscow"

Не забывайте ставить пробелы в коде для читаемости. Сами пробелы не важны для выполнения программы, но работать с таким кодом намного проще.

  • Используйте пробелы вокруг операторов (присваивания, арифметических действия и т.д.)
  • Отступы: Используйте 4 пробела на каждый уровень отступа.

# Не рекомендуется
name='Ivan'
print(2+2)

# Рекомендуется
name = 'Ivan'
print(2 + 2)

Преобразования одного типа данных в другой

Зачем это нужно? Разные типа данных имеют свою особенность и по разному применяются в работе. Самый простой пример команда input() принимает данные в формате str(строка), к которой нельзя применить арифметические действия. А если быть точным то они применятся, но не так как с числами.


# Переменная age содержит в себе данные "22" типа str
age = '22'  # str -> '22'

# int(): Эта функция преобразует данные в целочисленный тип. Если аргумент - это число с плавающей точкой, то он будет округлен в меньшую сторону.
age = int(age)  # int -> 22

# float(): Эта функция преобразует данные в тип с плавающей точкой.
age = float(age)  # float -> 22.0

# bool() - это встроенная функция, которая преобразует значения различных типов в логический (True или False)
print(bool(0))  # Вывод: False
print(bool(1))  # Вывод: True
print(bool(-1))  # Вывод: True
print(bool(''))  # Вывод: False
print(bool('Hello'))  # Вывод: True
print(bool([]))  # Вывод: False
print(bool([1, 2, 3]))  # Вывод: True
print(bool(None))  # Вывод: False

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


# Калькулятор А+В=
a = input("Введите число А= ")  # ввел число 1
b = input("Введите число B= ")  # ввел число 2
print(a + b)
# Ответ неожиданно будет не 3, а 12.

Проблема заключается в том, что функция input() в Python всегда возвращает строку (str), а не число. Когда вы складываете две строки вместе, Python объединяет их (это называется конкатенацией), а не выполняет арифметическую операцию.

Чтобы исправить это, вы должны преобразовать ввод пользователя в числа с помощью функций int() или float(), в зависимости от того, ожидаете ли вы целые числа или числа с плавающей точкой.


# Калькулятор А+В=
# int() - преобразует введенные данные в число, если преобразовать невозможно то выдаст ошибку.
a = int(input("Введите число А= "))  # ввел число 1
b = int(input("Введите число B= "))  # ввел число 2
print(a + b)

# Ответ 3 тк теперь мы складываем две переменных типа int(число)

Комментарии

Комментарии играют важную роль в программировании. Они дают программистам возможность объяснить свой код, что особенно полезно при работе в команде или при возвращении к своему собственному коду через некоторое время.

Отключение кода: Если вы хотите временно отключить определенный блок кода (например, при отладке), вы можете закомментировать его. Но помните, что чрезмерное использование этого может привести к засорению кода.


# комментарий
# лолололо
# print (a+b)
# какой то важный и неважный текст
#

"""
Это многострочный
комментарий.
"""

Задачи

  1. Сумма трех.

    Посчитайте сумму трех введенных целых чисел

  2. Площадь.

    Пользователь вводит стороны прямоугольника, выведите его площадь

  3. Периметр.

    Пользователь вводит стороны прямоугольника, выведите его периметр

  4. Площадь круга.

    Пользователь вводит радиус круга, выведите площадь круга

    
     # Ввод:
     >> 2
     # Вывод:
     >> 12.56
     
  5. Максимальное число.

    Используя стандартные арифметические операции представьте самое большое целое число из цифр 4, 4, 4 и выведете его.

  6. Сумма дробных.

    Посчитайте сумму трех введенных дробных чисел.

    
     # Ввод:
     >> 1.5
     >> 2.5
     >> 1.1
     # Вывод:
     >> 5.1
     
  7. Школьники и яблоки.

    n школьников делят k яблок поровну, неделящийся остаток остается в корзинке. Сколько яблок достанется каждому школьнику? Сколько яблок останется в корзинке?

    
     # Ввод:
     >> Количество яблок: 10
     >> Количество школьников: 3
     # Вывод:
     >> 3 # каждому
     >> 1 # останется
     
  8. Преобразование числа.

    Какие из представленных выражений можно преобразовать в целое за одну операцию ( командой int() ):

    1. ‘123е’;
    2. ‘91.4’;
    3. 524.345 ** 43;
    4. ‘7.1 + 4’;
    5. ‘4’ - 2;
    6. ‘4 - 2’;
    7. ‘42’
    8. -12.12?