Ввод и вывод данных в программах на языке Python
Будьте внимательны! У Вас есть 10 минут на прохождение теста. Система оценивания — 5 балльная. Разбалловка теста — 3,4,5 баллов, в зависимости от сложности вопроса. Порядок заданий и вариантов ответов в тесте случайный. С допущенными ошибками и верными ответами можно будет ознакомиться после прохождения теста. Удачи!
Система оценки: 5 балльная
Список вопросов теста
Вопрос 1
Какие из приведённых утверждений правдивы?
Варианты ответов
- В Python не предусмотрено инструкций для ввода и вывода данных.
- Для вывода данных из оперативной памяти компьютера на экран монитора используется инструкция print ()
- Функция print () возвращает числовые данные.
- Функция input () возвращает текстовые данные.
Вопрос 2
Как называется принцип, согласно которому ввод и вывод данных в программе должны сопровождаться поясняющими сообщениями и подсказками?
Варианты ответов
- Понятность программы
- Дружественность пользовательского интерфейса
- Ясность пользовательского интерфейса
- Полезность программы
Вопрос 3
Выберите инструкцию, присваивающую переменной a значение, введённое пользователем с клавиатуры.
Варианты ответов
- a = print ()
- print (a)
- input (a)
- a = input ()
Вопрос 4
Данные какого типа возвращает функция input ()?
Варианты ответов
Вопрос 5
Что будет выведено на экран в результате выполнения инструкции print (2, ‘a’, 8)?
Вопрос 6
Что будет выведено на экран в результате выполнения инструкции print (2, ‘a’, 8, sep = ‘, ‘)?
Вопрос 7
Как записывается инструкция, которая формирует символьную строку заданного формата?
Варианты ответов
Вопрос 8
Какая символьная строка будет сформирована в результате выполнения инструкции
s = ».format (8)? При записи ответа вместо пробелов используйте нижние подчёркивания.
Вопрос 9
Какая символьная строка будет сформирована при выполнении инструкции s = ».format (3.1496)? При записи ответа вместо пробелов используйте нижние подчёркивания.
Вопрос 10
Запишите в нормальной форме число 0.2e+01.
Структура программы Python. Ввод и вывод данных
Внимание! Все тесты в этом разделе разработаны пользователями сайта для собственного использования. Администрация сайта не проверяет возможные ошибки, которые могут встретиться в тестах.
Тест на знание структуры программ на языке Python и на особенности ввода/вывода на данном языке программирования. Тест предназначен для обучающихся 8 класса, которые начинают знакомство с языком программирования Python
Система оценки: 5 балльная
Список вопросов теста
Вопрос 1
Установите соответствие между элементами схемы их номерами.
1. Какая строка символов будет создана при использовании инструкции s = ‘’.format(3.1496)?
2. Что будет выведено на экран при выполнении инструкции print(2, ‘a’, 8)?
3. Какая строка символов будет сформирована при выполнении инструкции s = ‘’.format(8)? Запишите ваш ответ, заменяя пробелы нижними подчёркиваниями.
Тема: Форматирование символьных строк в Python
Объяснение:
1. Для выполнения инструкции `s = ‘’.format(3.1496)` используется метод `format()`, который форматирует значение числа с плавающей точкой в символьную строку. В данном случае, формат `<>` указывает на место, где будет подставлено значение переменной, а `:5.2f` определяет ширину поля (5 символов), количество знаков после запятой (2) и тип данных (число с плавающей точкой).
Результат выполнения данной инструкции будет символьная строка `’ 3.15’`. Обратите внимание, что строка имеет ширину 5 символов, поэтому добавляются два пробела перед числом.
2. При выполнении инструкции `print(2, ‘a’, 8)` будет выведено на экран значение каждого аргумента через пробел. Таким образом, на экран будет выведено: `2 a 8`.
3. Инструкция `s = ‘’.format(8)` подобна первому примеру, но здесь используется формат «, где `d` означает десятичное число без точки. Поэтому результат выполнения этой инструкции будет символьная строка `’ 8’`. Строка имеет ширину 5 символов, поэтому добавляются четыре пробела перед числом.
Пример использования:
1. Инструкция `s = ‘’.format(3.1496)` формирует символьную строку `’ 3.15’`.
2. Инструкция `print(2, ‘a’, 8)` выведет на экран `2 a 8`.
3. Инструкция `s = ‘’.format(8)` формирует символьную строку `’ 8’`.
Совет: При использовании метода `format()` для форматирования символьных строк в Python, вы можете задавать различные параметры, такие как ширина поля, количество знаков после запятой и т.д. Обратитесь к официальной документации Python для получения более подробной информации о возможностях форматирования символьных строк.
Упражнение: Какая символьная строка будет сформирована при выполнении инструкции `s = ‘’.format(12.345)`? При записи ответа вместо пробелов используйте нижние подчёркивания.
Какая символьная строка будет сформирована в результате выполнения инструкции s 5d format 8
Строковый метод format() форматирует строки python для более красивого вывода.
Здесь p0, p1. — это позиционные аргументы, а k0, k1. — аргументы-ключевые слова со значениями v0, v1. соответственно.
А template — это набор строк с заполнителями для аргументов.
Параметры format()
Метод format() принимает любое количество параметров. Но они делятся на два вида:
- Позиционные аргументы — список параметров, доступ к которым можно получить по индексу параметра в фигурных скобках .
- Параметры — ключевые слова — список параметров типа ключ=значение, доступ к которым можно получить с помощью ключа параметра в фигурных скобках .
Возвращаемое значение format()
Метода format() возвращает отформатированную строку.
Как работает format()?
Формат читает тип переданных аргументов и форматирует строку в соответствии с кодами форматирования в строке.
Для позиционных аргументов
Здесь Аргумент 0 — это строка “Adam”, а Аргумент 1 — число с плавающей точкой 230.2346.
Список аргументов в Python начинается с 0.
Строка Hello , your balance is — это шаблон строки. Он содержит коды форматирования.
Фигурные скобки — это всего лишь заполнители, которые будут заменены аргументами. В примере выше — это заполнитель для «Adam» , а — для 230.2346 .
Поскольку шаблон строки ссылается на аргументы format() ( и ), они являются позиционными аргумента. На них можно ссылаться без использования чисел, а Python конвертирует <> в числа автоматически.
- Поскольку «Adam» — это нулевой аргумент, он располагается в позиции . Поскольку не содержит других кодов форматирования, дополнительные операции не осуществляются.
- Но в случае с первым аргументом, 230.2346 , ситуация другая. размещает 230.2346 на нужно месте и выполняет операцию 9.3f .
- f определяет, что это формат числа с плавающей точкой. Если указать неправильно, будет ошибка.
- Часть до точки (9) определяет минимальную ширину, которую может занимать число 230.2346. В этом случае числу 230.2346 выделены 9 мест с точкой.
Если параметр выравнивания не указан, то он выравнивается вправо до оставшихся позиций (для строк — влево). - Часть после точки (3) урезает десятичную часть (2346) до указанной числа. В этом случае 2346 может занимать три места. Остаток (46) округляется и выходит 235.
Для аргументов-ключевых слов

В этом примере используется то же выражение, чтобы продемонстрировать разницу в использовании позиционных и аргументов-ключевых слов.
Здесь вместо просто параметров использованы сочетания ключ-значение. А именно: name=»Adam» и blc=230.2346 .
Поскольку ссылка на эти параметры происходит через ключи ( и ) — это именованные аргументы.
Что происходит внутри:
- Заполнитель заменяется значением ключа name — “Adam”. Никаких дополнительных операций здесь нет.
- В случае с аргументом blc=230.2346 заполнитель заменяется на значение 230.2346 . Но перед заменой производится операция 9.3f .
Вывод — “230.235”. Десятичная часть обрезается после трех позиций, а оставшиеся цифры округляются. Общая ширина — 9, а два символа остаются справа.
Базовое форматирование с format()
Метод format() позволяет использовать простые заполнители для форматирования.
Пример №1: базовое форматирование для аргументов по умолчанию, позиционных и аргументов-ключевых слов.
При запуске программы вывод будет одинаковым:
При использовании смешанных аргументов аргументы-ключевые слова должны идти после позиционных аргументов.
Форматирование чисел с format()
С помощью спецификаторов формата можно форматировать и числа:
Типы форматирования чисел
| Тип | Значение |
|---|---|
| d | Десятичное число |
| c | Соответствующий символ Unicode |
| b | Двоичный формат |
| o | Восьмеричный формат |
| x | Шестнадцатеричный формат (в нижнем регистре) |
| X | Шестнадцатеричный формат (в верхнем регистре) |
| n | То же, что и d , но использует местную настройку для разделения числа |
| e | Экспоненциальная запись (e в нижнем регистре) |
| E | Экспоненциальная запись (E в верхнем регистре) |
| f | Отображать фиксированное количество знаков (по умолчанию 6) |
| F | То же, что и f , только отображает inf как INF , а nan как NAN |
| g | Общий формат. Округляет число до p значащих цифр (Точность по умолчанию: 6) |
| G | То же, что и g . Но переключается к E , если число очень большое |
| % | Проценты. Делит на 100 и добавляет % в конце |
Пример №2: простое форматирование чисел.
При запуске этой программы вывод будет следующий:
Пример №3: форматирование чисел с полями для целых и чисел с плавающей точкой.
Эта программа выдаст следующее:
- В первой инструкции принимает целое число в качестве аргумента и задает минимальную ширину 5. Поскольку настройка выравнивания не задана, оно выравнивается к правому краю.
- Во втором ширина (2) меньше, чем размер числа (1234), поэтому слева не появляется свободное пространство, но число и не обрезается.
- В отличие от целых чисел у чисел с плавающей точкой есть целая и десятичная части. Минимальная ширина в этом случае включает обе из них и точку.
- В третьем выражении обрезает десятичную часть, округляя ее до 2 цифр. И число, теперь 12.235, занимает 8 позиций, оставляя 2 пустых местах слева.
- Если нужно заполнить оставшиеся места нулями, спецификатор может сделать и это. Это работает как для целых чисел, так и для чисел с плавающей точкой: и .
Пример №4: форматирование чисел со знаками.
Вывод будет следующий:
Форматирование чисел с выравниванием
Операторы < , ^ , >и = используются для выравнивания в том случае, если указана конкретная ширина.
Форматирование чисел с выравниванием
| Тип | Значение |
|---|---|
| Выравнивается по левому краю | |
| ^ | Выравнивается по центру |
| > | Выравнивается по правому краю |
| = | Сдвигает знаки (+ или -) к левой позиции |
Пример №5: форматирование чисел с выравниванием по центру, левому и правому краю.
Вывод этой программы:
Выравнивание по левому краю с нулями для целых чисел может создать проблемы, как в случае с третьим примером, который возвращает 12000 вместо 12.
Форматирование строк с format()
Как и числа, строки можно форматировать с помощью format() .
Пример №6: форматирование строк с полями и выравниванием.
При запуске программы вывод будет следующим:
Пример №7: обрезание строк.
Вывод будет следующим:
Форматирование элементов классов и словарей с format()
Python использует getattr() для элементов класса в форме “.age”. А __getitem__() — для элементов словаря в форме “[index]”.
Пример №8: форматирование элементов класса с format().
Вывод этой программы:
Здесь объект Person передается как аргумент-ключевое слово p .
В шаблоне строки получают доступ к значениям name и age с помощью .name и .age .
Пример №9: форматирование элементов словаря с format().
По аналогии с классом словарь person передается в качестве аргумента-ключевого слова p .
В шаблоне строки доступ к name и age получают с помощью [name] и [age] .
Есть и более простой способ форматировать словари в Python с помощью str.fromat(**mapping) .
* — это параметр формата (минимальная ширина поля).
Аргументы как параметры в format()
Параметры, такие как точность, выравнивание или символы заполнения можно передавать в качестве позиционных аргументов-ключевых слов.
Пример №10: динамическое форматирование.
- В первом пример “cat” — это позиционный аргумент, который будет отформатирован. Аналогично fill=’*’ , align=’^’ и width=5 являются аргументами-ключевыми словами.
- В шаблоне строки эти аргументы извлекаются не как обычные строки для вывода, а как коды форматирования: fill , align и width .
Эти аргументы заменяют соответствующие заполнители, а строка “cat” соответствующим образом форматируется. - Во втором примере 123.236 — это позиционный аргумент, а align , with и precision передаются в шаблон в качестве параметров форматирования.
Дополнительные параметры форматирования с format()
format() также поддерживает форматирования по типам, например, для datetime или форматирование сложных чисел. Он внутренне вызывает __format__() для datetime и получает доступ к атрибутам сложных чисел.
Можно запросто переопределить метод __format__() для любого объекта для создания собственного форматирования.
Пример №11: форматирование по типу с format() и переопределение метода _format().
- Для datetime:
Текущий объект datetime передается в качестве позиционного аргумента методу format() . С помощью метода __format__() format() получает доступ к году, месяцу, дню, часу, минутам и секундам. - Для сложны чисел:
1+2j конвертируется в объект ComplexNumber.
Затем через доступ к атрибутам real и imag числа форматируются. - Переопределение format():
Как и с datetime можно перезаписать метод __format__() для собственного форматирования, которое вернет возраст при попытке получить доступ через .
Также можно использовать функциональность __str__() и __repr__() объекта с условными обозначениями и format() .
Как и __format__() можно запросто переопределять метода __str__() и __repr__() объекта.
Похожие публикации:
- Как убрать разрыв страницы в ворде 2003
- Как установить директ 12
- Как установить другой office на windows 11
- Как установить компас 3d v10 на windows 10
