- Python – Read String from Console
- Examples
- 1. Read a string value from console
- 2. Read multiple strings entered by user in console
- Summary
- Чтение числа и строки с консоли в Python с помощью input()
- Пример 1: чтение целого числа из консоли
- Чтение строки из консоли с помощью функции input()
- Пример 1: чтение строки из консоли
- Пример 2: чтение строк от пользователя через консоль
- Заключение
- Python. Урок 12. Ввод-вывод данных. Работа с файлами
- Вывод данных в консоль
- Ввод данных с клавиатуры
- Работа с файлами
- Открытие и закрытие файла
- Чтение данных из файла
- Запись данных в файл
- Дополнительные методы для работы с файлами
- P.S.
- Python. Урок 12. Ввод-вывод данных. Работа с файлами : 2 комментария
Python – Read String from Console
To read a string from console as input to your Python program, you can use input() function.
input() can take an argument to print a message to the console, so that you can prompt the user and let him/her know what you are expecting.
In this tutorial, we will learn how to use input() function, to read an input from user in your console application.
Examples
1. Read a string value from console
In the following program, we shall prompt the user to enter his name. input() function does print the prompt message to console and waits for the user to enter input.
Python Program
#read string from user firstName = input('Enter your first name: ') print('Hello',firstName)
Run the program. The prompt appears on the console. Type the string and click enter. The new line is considered end of the input and the execution continues with statements after input() statement in the program.
Enter your first name: Brooks Hello Brooks
input() function returns what you have provided as input in the console and you can assign it to a variable. In the above program, we have assigned input() function to a variable. As a result, you can access the string value entered by the user using this variable.
2. Read multiple strings entered by user in console
In this program, we will read multiple strings from user through console, one by one. It is similar to our previous example, but it has two input() statements. The first input() statement shall read a string from console and assign it to firstName. The second input() statement shall read a string from console and assign it to lastName.
Python Program
#read multiple strings from user firstName = input('Enter your first name: ') lastName = input('Enter your last name: ') print('Hello',firstName, lastName)
Run the program, and you shall see the prompt by first input() statement. After you enter some string and type enter, you shall see the prompt by second input() statement. Enter a string for last name and click enter. The program has now read two strings from you, the user.
Enter your first name: Brooks Enter your last name: Henry Hello Brooks Henry
Summary
In this tutorial of Python Examples, we learned to read input from user, specifically to say, read string through console from user, using Python input(), with the help of well detailed Python example programs .
Чтение числа и строки с консоли в Python с помощью input()
Чтобы прочитать число с консоли, введенное пользователем, вы можете использовать функцию input() в Python.
Обычно input() считывает строку из консоли. Python3 не различает, является ли ввод строкой или числом. Все, что пользователь вводит через консоль, воспринимается как строка.
Как только мы получим строку, введенную пользователем в консоли, мы можем преобразовать ввод в целое число.
Пример 1: чтение целого числа из консоли
Функция input() возвращает строку. Затем int() преобразует строку в целое число. Таким образом, n1 и n2 получают номера после того, как пользователь ввел их в консоли.
#read integer from user n1 = int(input('Enter a number: ')) n2 = int(input('Enter another number: ')) print('The sum of two numbers is:', n1+n2)
Запустите программу, и вы увидите запрос на чтение n1. Введите номер и нажмите клавишу ввода. Затем вы увидите приглашение прочитать n2. Введите номер и нажмите клавишу ввода. После того, как мы прочитаем числа, мы сложим два числа и выведем результат на консоль.
Enter a number: 52 Enter another number: 14 The sum of two numbers is: 66
Арифметическая операция была выполнена, поскольку n1 и n2 – целые числа, а не строки.
Также вы можете попробовать распечатать тип переменной n1 или n2. Давайте попробуем в следующей программе Python.
#read integer from user n1 = int(input('Enter a number: ')) print(type(n1))
означает, что переменная n1 имеет тип класса int, сокращенно от integer.
В этом руководстве примеров Python мы узнали, как читать целое число из консоли с помощью input(), а затем приводить ее к типу.
Чтение строки из консоли с помощью функции input()
Чтобы прочитать строку с консоли в качестве ввода для вашей программы Python, вы также можете использовать функцию input().
Она может принимать аргумент для вывода сообщения на консоль, чтобы вы могли сделать запрос пользователю.
В этом руководстве мы узнаем, как использовать функцию для чтения ввода от пользователя в вашем консольном приложении.
Пример 1: чтение строки из консоли
В следующей программе мы предложим пользователю ввести свое имя. Метод выводит сообщение на консоль и ждет, пока пользователь введет данные.
#read string from user firstName = input('Enter your first name: ') print('Hello',firstName)
Запустите программу. После появления запроса на консоли, введите строку и нажмите Enter.
Enter your first name: Brooks Hello Brooks
input() возвращает то, что вы указали в качестве ввода в консоли. В результате вы можете получить доступ к строковому значению, введенному пользователем с помощью этой переменной.
Пример 2: чтение строк от пользователя через консоль
В этой программе мы будем читать несколько строк от пользователя через консоль, одну за другой. Он похож на наш предыдущий пример, но имеет два оператора input(). Первый оператор должен прочитать строку с консоли и присвоить firstName. Второй оператор должен прочитать строку с консоли и присвоить lastName.
#read multiple strings from user firstName = input('Enter your first name: ') lastName = input('Enter your last name: ') print('Hello',firstName, lastName)
Запустите программу, и вы увидите приглашение первого оператора. После того, как вы введете некоторую строку и наберете Enter, вы увидите подсказку от второго оператора. Введите строку для фамилии и нажмите Enter.
Enter your first name: Brooks Enter your last name: Henry Hello Brooks Henry
Заключение
В этом руководстве по примерам Python мы научились читать строку через консоль от пользователя, используя метод input() Python, с помощью хорошо подробных примеров.
Python. Урок 12. Ввод-вывод данных. Работа с файлами
В уроке рассмотрены основные способы ввода и вывода данных в Python с использованием консоли, и работа с файлами: открытие, закрытие, чтение и запись.
Вывод данных в консоль
Один из самых распространенных способов вывести данные в Python – это напечатать их в консоли. Если вы находитесь на этапе изучения языка, такой способ является основным для того, чтобы быстро просмотреть результат свой работы. Для вывода данных в консоль используется функция print.
Рассмотрим основные способы использования данной функции.
>>> print("Hello") Hello >>> print("Hello, " + "world!") Hello, world! >>> print("Age: " + str(23)) Age: 23
По умолчанию, для разделения элементов в функции print используется пробел.
Для замены разделителя необходимо использовать параметр sep функции print.
В качестве конечного элемента выводимой строки, используется символ перевода строки.
>>> for i in range(3): print("i: " + str(i)) i: 0 i: 1 i: 2
Для его замены используется параметр end.
>>> for i in range(3): print("[i: " + str(i) + "]", end=" -- ") [i: 0] -- [i: 1] -- [i: 2] --
Ввод данных с клавиатуры
Для считывания вводимых с клавиатуры данных используется функция input().
Для сохранения данных в переменной используется следующий синтаксис.
>>> a = input() hello >>> print(a) hello
Если считывается с клавиатуры целое число, то строку, получаемую с помощью функции input(), можно передать сразу в функцию int().
>>> val = int(input()) 123 >>> print(val) 123 >>> type(val) class 'int'>
Для вывода строки-приглашения, используйте ее в качестве аргумента функции input().
>>> tv = int(input("input number: ")) input number: 334 >>> print(tv) 334
Преобразование строки в список осуществляется с помощью метода split(), по умолчанию, в качестве разделителя, используется пробел.
>>> l = input().split() 1 2 3 4 5 6 7 >>> print(l) ['1', '2', '3', '4', '5', '6', '7']
Разделитель можно заменить, указав его в качестве аргумента метода split().
>>> nl = input().split("-") 1-2-3-4-5-6-7 >>> print(nl) ['1', '2', '3', '4', '5', '6', '7']
Для считывания списка чисел с одновременным приведением их к типу int можно воспользоваться вот такой конструкцией.
>>> nums = map(int, input().split()) 1 2 3 4 5 6 7 >>> print(list(nums)) [1, 2, 3, 4, 5, 6, 7]
Работа с файлами
Открытие и закрытие файла
Для открытия файла используется функция open(), которая возвращает файловый объект. Наиболее часто используемый вид данной функции выглядит так open(имя_файла, режим_доступа).
Для указания режима доступа используется следующие символы:
‘r’ – открыть файл для чтения;
‘w’ – открыть файл для записи;
‘x’ – открыть файл с целью создания, если файл существует, то вызов функции open завершится с ошибкой;
‘a’ – открыть файл для записи, при этом новые данные будут добавлены в конец файла, без удаления существующих;
‘+’ – открывает файл для обновления.
По умолчанию файл открывается на чтение в текстовом режиме.
У файлового объекта есть следующие атрибуты.
file.closed – возвращает true если файл закрыт и false в противном случае;
file.mode – возвращает режим доступа к файлу, при этом файл должен быть открыт;
>>> f = open("test.txt", "r") >>> print("file.closed: " + str(f.closed)) file.closed: False >>> print("file.mode: " + f.mode) file.mode: r >>> print("file.name: " + f.name) file.name: test.txt
Для закрытия файла используется метод close().
Чтение данных из файла
Чтение данных из файла осуществляется с помощью методов read(размер) и readline().
Метод read(размер) считывает из файла определенное количество символов, переданное в качестве аргумента. Если использовать этот метод без аргументов, то будет считан весь файл.
>>> f = open("test.txt", "r") >>> f.read() '1 2 3 4 5\nWork with file\n' >>> f.close()
В качестве аргумента метода можно передать количество символом, которое нужно считать.
>>> f = open("test.txt", "r") >>> f.read(5) '1 2 3' >>> f.close()
Метод readline() позволяет считать строку из открытого файла.
>>> f = open("test.txt", "r") >>> f.readline() '1 2 3 4 5\n' >>> f.close()
Построчное считывание можно организовать с помощью оператора for.
>>> f = open("test.txt", "r") >>> for line in f: . print(line) . 1 2 3 4 5 Work with file >>> f.close()
Запись данных в файл
Для записи данных файл используется метод write(строка), при успешной записи он вернет количество записанных символов.
>>> f = open("test.txt", "a") >>> f.write("Test string") 11 >>> f.close()
Дополнительные методы для работы с файлами
Метод tell() возвращает текущую позицию “условного курсора” в файле. Например, если вы считали пять символов, то “курсор” будет установлен в позицию 5.
>>> f = open("test.txt", "r") >>> f.read(5) '1 2 3' >>> f.tell() 5 >>> f.close()
Метод seek(позиция) выставляет позицию в файле.
>>> f = open("test.txt", "r") >>> f.tell() 0 >>> f.seek(8) 8 >>> f.read(1) '5' >>> f.tell() 9 >>> f.close()
Хорошей практикой при работе с файлами является применение оператора with. При его использовании нет необходимости закрывать файл, при завершении работы с ним, эта операция будет выполнена автоматически.
>>> with open("test.txt", "r") as f: . for line in f: . print(line) . 1 2 3 4 5 Work with file Test string >>> f.closed True
P.S.
Если вам интересна тема анализа данных, то мы рекомендуем ознакомиться с библиотекой Pandas. На нашем сайте вы можете найти вводные уроки по этой теме. Все уроки по библиотеке Pandas собраны в книге “Pandas. Работа с данными”.
>>
Python. Урок 12. Ввод-вывод данных. Работа с файлами : 2 комментария
- Моксим23.11.2020 “Преобразование строки в список осуществляется с помощью метода split(), по умолчанию, в качестве разделителя, используется пробел.”
Разделитель по умолчанию не пробел, а пустое пространство
- Алексей 01.06.2021 Ого, действительно:
>>> “1 2 3 4 5 7”.split()
[‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘7’]
И даже так:
>>> “1 2 \n 21 12 4”.split()
[‘1’, ‘2’, ’21’, ’12’, ‘4’]