Решение модуля 1.6 Инди-курс программирования на Python
Модуль 1.6 (Функция print()) научит использовать функцию print() которая позволяет вывести на экран значения.
Ниже представлены примеры задач с решением на тему Функция print ().
Как называется параметр в функции print, который отвечает за разделяющие символы?
Как называется параметр в функции print, который отвечает за значение, которое будет выведено в конце?
Напишите программу, которая выводит на экран сообщение «Привет, Мир!»
Введите три числа и выведите их через запятую
a, b, c = map(int, input().split()) print(a, b, c, sep = ',')
Программа, считывает натуральное число n, после чего выводит двойное неравенство этого числа с его соседними числами.
a = int(input()) print(a - 1, a, a + 1, sep='<')
Вам необходимо вывести три фразы, разделяя их тремя дефисами. Сами фразы вводятся с клавиатуры на трех разных строчках
a = input() b = input() c = input() print(a,b,c,sep = '---')
В этой задаче мы сами будем решать, какое значение использовать в качестве разделителя в параметре sep
Программа принимает на вход строку — разделитель, вам необходимо распечатать числа от 1 до 5, выводя между ними введенный разделитель
Что будет напечатано в результате выполнения данной программы?
print(‘Гвидо’, ‘Ван’, ‘Россум’, sep=’*’, end=’-‘)
print(‘Основатель’, ‘Питона’, sep=’_’, end=’!’)
Гвидо*Ван*Россум-Основатель_Питона!
Ввод и вывод данных
Переменная - это именованный контейнер для заданного значения.
# Пример создания переменных
age = 19
name = 'Ivan'
isActive = True
# name и Name - это разные переменные
# Имена переменных не могут начинаться с цифры!
В Python есть 4 примитивных типа данных:
# float (дробные числа)
fraction = 2.5
# bool (правда или ложь)
isReady = True # всего два значения: True и False
Мы можем преобразовывать один тип данных в другой с помощью одноименных функций. Например, число может стать строкой, строка - числом, дробное число - целым.
age = '22' # str -> '22'
age = int (age) # int -> 22
age = float (age) # float -> 22.0
age = bool (age) # bool -> True
Функция print() выводит данные на экран.
name = 'Alexey'
# В скобках записываются переданные в функцию параметры
print (name)
Функция print() может принимать несколько входных параметров.
Каждый print() выводит данные на новой строке. По умолчанию завершающий символ строки равен символу новой строки (\n).
print ( 'Hello' )
print ( 'world' )
Завершающий символ строки в функции print() можно изменять.
print ( 'Hello' , end = ' ' )
print ( 'world' )
Функция input() принимает пользовательский ввод данных.
name = input ()
print ( 'Hello ' + name)
# После запуска скрипта Python будет ожидать ввода данных
Функция input может принимать всего лишь один аргумент - строку, которая выведется перед входной строкой.
name = input ( 'Enter your name: ' )
print ( 'Hello, ' + name)
Данные, полученные с помощью функции input(), имеют строковый тип данных (str).
Строки можно складывать друг с другом, такое сложение называется их конкатенацией или объединением.
# Сумма двух строчных чисел
number1 = input ( 'Введите число: ' )
number2 = input ( 'Введите число: ' )
print (number1 + number2)
Преобразуем строковый тип в целое число (str -> int).
# Исправленная сумма двух чисел
number1 = int ( input ( 'Введите число: ' ))
number2 = int ( input ( 'Введите число: ' ))
print (number1 + number2)
Примеры
# Произведение двух введенных чисел
a = int ( input ( 'Введите число: ' ))
b = int ( input ( 'Введите число: ' ))
print (a * b)
# Приветствие пользователя по его имени
firstname = input ( 'Введите свое имя: ' ) # здесь приводить к типу int не нужно
lastname = input ( 'Введите свою фамилию: ' )
print ( 'Здравствуйте, ' + firstname + ' ' + lastname) # не забудьте про пробел между словами
# Ввод:
>> Иван
>> Иванов
# Вывод:
>> Здравствуйте, Иван Иванов
# Операция % позволяет получить остаток от деления
print ( 10 % 2 ) # 0, так как 10 делится на 2 нацело
print ( 10 % 3 ) # 1, остаток равен 1
print ( 10 % 4 ) # 2, остаток равен 2
# Операция // позволяет получить целую часть от деления
print ( 10 // 2 ) # 5
print ( 10 // 3 ) # 3
print ( 10 // 4 ) # 2
Решение задач
Посчитайте сумму трех введенных целых чисел
Пользователь вводит стороны прямоугольника, выведите его площадь
Пользователь вводит стороны прямоугольника, выведите его периметр
Пользователь вводит радиус круга, выведите площадь круга
Посчитайте сумму трех введенных дробных чисел.
n школьников делят k яблок поровну, неделящийся остаток остается в корзинке. Сколько яблок достанется каждому школьнику? Сколько яблок останется в корзинке?
# Ввод:
>> 10
>> 3
# Вывод:
>> 3 # каждому
>> 1 # останется
Ввод и вывод данных
Переменной в программировании называется именованный контейнер для некоторого значения. Представьте себе ящик с наклееным на него стикером. Вы кладете что-нибудь в ящик и пишете на стикере короткое имя без пробелов и знаков препинания, начинающееся с буквы английского алфавита, примерно так же работает переменная в программировании.
a и А - это разные переменные, регистр ввода имеет значение
Типы данных
Информация получаемая нами с помощью различных органов чувств делится на зрительную, слуховую, обонятельную, осязательную и другие. В программировании так же есть свое разделение, разделение на типы данных. Примитивных типов данных в Python 4:
int - целочисленный тип (1, 192, 781287)
float - вещественный (дробный) (1.12312, 1231.12378718)
str - строковый тип (обязательно пишется в кавычках) ('Hello world')
bool - булевый тип (имеет всего два значения: True и False)
Приведение типов
Приведением типов данных называется преобразование одного типа в другой, например, строку в число, число в строку, число в булеву переменную, строку в дробь и так далее.
a = 10
b = str (a) # b - это строка
с = int (b) # c - это снова число
d = 10.78
e = int (d) # e равно 10
Функция print
Функция print выводит переданные в неё аргументы в стандартный поток вывода. Что же такое стандартный поток вывода? Standart output или stdout называется потоком вывода, местом, куда мы выводим наш текстовый контент. По умолчанию стандартный поток вывода равен sys.stdout и поэтому вывод осуществляется в консоль.
Функция print все переданные в неё аргументы в стандартный поток вывода. Например:
print ( 1 )
print ( 'Hello world!' )
print ( False )
print ( 1.5 , 2.0 , 10 , True , 'username' )
print ( 'Hello' + ' ' + 'world' + '!' )
# 1
# Hello world!
# False
# 1.5 2.0 10 True username
# Hello world!
На этом тривиальном примере мы видим две вещи. Во-первых, каждый print переносит поток вывода на новую строчку. Во-вторых, аргументы, переданные в функцию print выводятся через пробел.
# Во-первых:
print ( 1 )
print ( 2 )
# 1
# 2
# Во-вторых:
print ( 'Hello' , 'world' )
# Hello world
В обоих случаях мы можем изменить стандартное поведение. Рассмотрим первый параметр функции print — end, в него передается строка, которая напечатается после всех аргументов функции print.
print ( 1 , end = ' ' )
print ( 2 , end = ' ' )
print ( 3 , end = ' ' )
# 1 2 3
print ( 1 , end = '' - '' )
print ( 2 , end = '-' )
print ( 3 , end = '' - '' )
# 1-2-3-
print ( 1 , end = '-я выведусь после первого print-' )
print ( 2 , end = '-a я после второго-' )
print ( 3 , end = '-я выведусь после третьего-' )
# 1-я выведусь после первого print-2-a я после второго-3-я выведусь после третьего-
Рассмотрим второй параметр функции print — sep, sep от английского separator (разделитель). По умолчанию параметр sep равен ' '. Время для экспериментов ╰(▔∀▔)╯.
print ( 1 , 2 , 3 , 4 )
print ( 1 , 2 , 3 , 4 , sep = '+++' )
print ( 1 , 2 , 3 , 4 , sep = 'разделитель' )
print ( 1 , 2 , 3 , 4 , sep = '(◕‿◕)' )
print ( 1 , 2 , 3 , 4 , sep = '(ノ◕ヮ◕)ノ*:・゚✧' )
# 1 2 3 4
# 1+++2+++3+++4
# 1разделитель2разделитель3разделитель4
# 1(◕‿◕)2(◕‿◕)3(◕‿◕)4
# 1(ノ◕ヮ◕)ノ*:・゚✧2(ノ◕ヮ◕)ノ*:・゚✧3(ノ◕ヮ◕)ノ*:・゚✧4
Функция input
Функция input является функцией стандартного ввода (stdin). Ее главная задача - это передача введенных пользователем данных в функцию.
name = input ()
print ( 'Hello, ' + name)
Функция input может принимать всего лишь один аргумент - строку, которая выведется перед кареткой ввода
name = input ( 'Enter your name: ' )
print ( 'Hello, ' + name)
Функция input возвращает строковый тип данных
Строки можно складывать друг с другом - это называется конкатенацией или объединением
number = input ()
print (type(number))
#
Поэтому если мы напишем такой код, то он будет работать некорректно:
number1 = input ()
number2 = input ()
print (number1 + number2)
# Ввод:
# 1
# 2
# Вывод:
# 12
Поэтому необходимо преобразовать строковый тип в целочисленный (str в int)
number1 = int ( input ())
number2 = int ( input ())
print (number1 + number2)
# Ввод:
# 1
# 2
# Вывод:
# 3
Всегда проверяйте тип полученных данных, это поможет вам избежать большого количества ошибок. К слову, если вы что-то напутали с типами переменных, то Python выдаст ошибку TypeError (ошибка типа)
Решение задач
1. Поэкспериментируйте с переводом в различные типы данных
2. Пользователь вводит свое имя и фамилию. Выведите:
Hello, имя фамилия
# На месте слов с % должны быть введенные данные
3. Посчитайте сумму трех введенных целых чисел
4. Посчитайте сумму трех введенных дробных чисел. Подумайте в какой тип данных нужно преобразовать значение, возвращенное функцией input
5. Дано число, выведите предыдущее и следущее за ним числа в таком формате:
# Число равно 10
Число предшествующее числу 10 равно 9
Число следующее за числом 10 равно 11
6. Вводятся имя и возраст. Выведите, где введенное имя = Максим, а возраст = 20
Привет, Максим! Ваш возраст равен 20 !