Ввод-вывод, оператор присваивания, арифметические операции
Данный курс будет посвящен изучению программирования с использованием языка Python. Это — современный язык программирования, работающий на всех распространных операционных системах.
В настоящее время существует две версии языка Python: более старая, но пока ещё более распространненая версия 2 и современная версия 3. Они не вполне совместимы друг с другом: программа, написанная для одной версии языка может оказаться невыполнимой для другой версии. Но в основном обе версии очень похожи.
Мы будем использовать версию 3 данного языка, некоторые из используемых примеров не будут работать с версией 2. Последняя версия языка, доступная в сентябре 2010 года — 3.1.2, именно её необходимо установить дома, скачав данную версию с сайта www.python.org.
Запустить интерпретатор python можно из командной строки:
$ python3
Будьте внимательны — команда python запустит интерпретатор версии 2, с которым мы работать не будем. В системе Windows можно использовать пункт меню “Python (command line)”
Вы увидите примерно следующее приглашение командной строки:
Python 3.1.2 (r312:79147, Jun 12 2010, 15:29:06)
[GCC 4.4.3 20100316 (ALT Linux 4.4.3-alt2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Смело вводите команды и наслаждайтесь результатом. А что можно вводить? Несколько примеров:
>>> 2 + 2
4
>>> 2 ** 100
1267650600228229401496703205376
>>> 'Hello' + 'World'
'HelloWorld'
>>> 'ABC' * 100
'ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC'
Первая команда вычисляет сумму двух чисел, вторая команда вычисляет 2 в степени 100, третья команда выполняет операцию конкатенации для строк, а четвертая команда печатает строку ‘ABC’, повторенную 100 раз.
Хотите закончить работу с питоном? Введите команду exit() (именно так, со скобочками, так как это — функция), или нажмите Ctrl+D.
Как сделать вывод нескольких переменных python в одну строку
Вывести несколько переменных одной строкой в Python можно сделать несколькими способами:
- Перечислить эти переменные в функции print() через запятую
a = 'apple' b = 'orange' print(a, b) # => apple orange
- Использовать f-строки
a = 'apple' b = 'orange' print(f'a> b>') # => apple orange
- Использовать интерполяцию и задать шаблон для метода .format()
a = 'apple' b = 'orange' print('<> <>'.format(a, b)) # => apple orange
Ввод, вывод и переменные в python
В прошлой главе мы научились использовать питон для повседневных математических вычислений, вводя команды по одной. Это называется режимом консоли, или интерактивным режимом. Но с увеличением размера программы, писать код по одной строчке становится неудобно, гораздо проще написать программу целиком (или создать скрипт), а затем при необходимости запускать.
Традиционно, первой программой на любом языке программирования становится «Hello, world!». Такая программа просто запускается и говорит миру — «привет!».
Чтобы написать нашу первую программу, зайдите в меню IDLE и смело выбирайте File -> New File . В появившемся новом пустом окне введите команду:
print("Hello, world!")
Затем нажмите Run -> Run Module и сохраните ваш файл в удобном для вас месте на диске. Лучше всего сделать отдельную папку для программирования и в ней отдельные подпапки для каждой главы. Результат работы программы появится в основном окне IDLE.
Вау! Ты только что написал свою первую программу!
Используем print для вывода информации
Для вывода данных в питоне используется команда print . Как и после любой команды, после print ставятся круглые скобочки, а в них — аргумент этой команды — строка или число, которые надо вывести.
Одна команда — одна строка. Если на одной строке (одной командой) нужно вывести несколько чисел, строк или переменных, их нужно разделять запятыми.
print("Можно выводить код на разных строках!") print("Очень удобно! А еще можно сделать пустую строку. ") print("") print(100 + 1, "долматинец", " - можно разделять части вывод")
Можно выводить код на разных строках! Очень удобно! 101 долматинец - можно разделять на части вывод
Для тренировки, попробуй написать программу, которая выводит на экран ваше имя и три твоих любимых фильма (или сериала/группы/книги. ). Главное, чтобы текст был на разных строках.
Переменные в python
Как вы помните, если мы хотим что-то временно сохранить, нам нужна переменная.
Переменная — это именованный участок оперативной памяти, предназначенный для хранения значения определенного типа (целое число / действительное число / текст. ). В прочем, питон сам определяет тип переменной, вам нужно указать только ее имя.
Для создания переменной нужно просто написать ее имя и что-либо в нее положить, для чего используется оператор присваивания ( = ).
name = "Ростислав" print("Меня зовут ", name, ".")
Меня зовут Ростислав.
Названия переменных могут состоять из латинских букв и цифр, а также символа _ , но не могут начинаться с цифры.
Формально, можно использовать и русские символы, но так обычно не делают. Обрати внимание, в коде выше, чтобы вывести текст, мы выделили его в кавычки, а чтобы переменную — написали ее имя без кавычек.
Кавычки могут быть как «двойными» , так и ‘одинарными’ , главное чтобы в начале и в конце текста стояли одинаковые кавычки.
Используем input для общения с пользователем
Для ввода данных используется команда (а правильней — функция) input . В качестве аргумента она принимает поясняющий текст, а результат возвращает в виде строки.
number = input('Сколько котов вы хотите купить? ') print('Отгружаем вам ', number, "котов!")
Сколько котов вы хотите купить? 40 Отгружаем вам 40 котов!
Если ввести нужно числа, а не строку (т.е. проводить с результатами операции, как с числами):, то результат надо преобразовать в число.
Код:
width = int(input('Введите ширину участка: ')) height = int(input('Введите высоту участка: ')) print('Площадь: ', width * height)
Результат:
Введите ширину участка: 20 Введите высоту участка: 5 Площадь: 100
Аналогично с помощью функции str можно преобразовать число в строку. Но, погодите, зачем это нужно? Что будет, если не использвоать int ? Попробуй запустить вот этот код.
s = input() print(s * 10)
Результат:
Что произошло?! Ведь 10 на 10 — это 100, а совсем не то, что выдал питон! А если вот так?
s = input() print(s + 10)
Кажется, мы только что получили нашу первую ошибку времени выполнения. Не пугайся, в работе даже самых опытных программистов это случается постоянно. Главное уметь отлавливать их и исправлять до того, как программа попадет к пользователю.
Текст ошибки может быть очень длинным, но на самом деле пока нам важна только последняя строка TypeError: can only concatenate str (not «int») to str . Если попробовать перевести ее в переводчике, получится что-то вроде Ошибка типа: можно соединять только str (строки) и str (строки), но не «int» (это целое число). .
Дело в том, что по-умолчанию питон считает, что мы вводим именно строку. Именно поэтому при умножения десятка повторилась 10 раз, а не умножилась на 10, а при сложении вообще все сломалось. Чтобы работать с введенными данными, как с числами, их нужно превратить в числа.
s = int(input()) print(s + 10)
Теперь все будет работать как задумано. Кстати, а попробуй сложить две строки, будет работать? Для тренировки напиши программу, которая спрашивает у пользователя, как его зовут, а потом здоровается с ним по имени.
Как вас зовут? Ростислав Добрый вечер, Ростислав!
Что выводит программа? | Что нужно ввести? |
---|---|
Как вас зовут? Добрый вечер, Инна! |
Инна |
Как вас зовут? Добрый вечер, Павел! |
Павел |
Доступные операции с переменными
В предыдущей главе мы с вами применяли математические операции к числам, в те же операции мы можем применять к переменным.
a = 10 # теперь в переменной a лежит число 10 b = 20 # а в переменной b лежит число 20 a = a + 5 # a теперь равно 15 a = a + b # a равно 35 a = a - 20 # a равно 15 a = a * 2 # a равно 30 a = b / 2 # a равно 10.0 b = a % 4 # b равно 2, этот оператор возвращает остаток от деления a = a // 3 # целочисленное деление, а рано 3 b = b ** 3 # возведение в степень, b равно 8
Используя эти операции, а также функции input и print , решите задачи, приведенные в этом разделе.
Создаем линейный квест
Кажется, сейчас у нас есть все, чтобы создать линеный квест!
В качестве примера линейного квеста давай сделаем что-то забавное. Попробуй написать программу, которая спрашивает какую-либо информацию про пользователя, а затем рассказывает про него шутку.
Между частями шутки для пущего эффекта можно добавить ожидание нажатия книпки Enter. Для этого можно использовать пустой input() , достаточно просто вызвать эту функцию не сохраняя результат.
Кстати, для нагнетения обстановки можно вместо нажатий Enter добавить задержку. Например, персонаж какое-то время пытается открыть дверь или ожидается итог напряженной схватки. Сделать это можно, используя встроенный модуль time (мы с тобой уже знакомы с модулем math ). Пример его использования ниже.
import time print("Сейчас будет перерыв 10 секунд.") time.sleep(10) print("10 секунд прошло, работаем дальше. ")
Попробуй оба варианта, сначала с input(), а потом с задержками. Как только заработает, можно смело хвастаться, что у тебя получился линейный квест!
ввод в одну строку двух переменных, у одной из которых несколько значений
Мне нужно сделать ввод в одну строку двух переменных, но одна из них содержит в себе несколько значений, как я могу это сделать? Пример: 5 1 2 3 4, где 5 это переменная N, а 1 2 3 4, переменная a. Сейчас же у меня получается: 5 1 2 3 4 Вот код который у меня есть на данный момент
n=int(input()) a = map(int,input().split()) g=1 while True: if g not in a: print(g) break else: g=g+1
Отслеживать
задан 15 фев 2021 в 11:02
user429660 user429660
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
n, *a = map(int, "1 2 3 4 5".split()) print( n ) # 1 print( a ) # [2, 3, 4, 5]
Первое значение попадет в n , оставшиеся соберутся в a в виде массива.
Отслеживать
ответ дан 15 фев 2021 в 11:13
OPTIMUS PRIME OPTIMUS PRIME
27.1k 3 3 золотых знака 23 23 серебряных знака 49 49 бронзовых знаков