Питон ввод данных через запятую
Python 3 — это современный язык, на котором просто и приятно писать программы.
Для печати значений в Питоне есть функция print(). Внутри круглых скобок через запятую мы пишем то, что хотим вывести. Вот программа, которая делает несколько вычислений:
print(5 + 10) print(3 * 7, (17 - 2) * 8) print(2 ** 16) # две звёздочки означают возведение в степень print(37 / 3) # один слэш — это деление с ответом-дробью print(37 // 3) # два слэша считают частное от деления нацело # это как операция div в других языках print(37 % 3) # процент считает остаток от деления нацело # это как операция mod в других языках
Для ввода данных в программу мы используем функцию input() . Она считывает одну строку.
Вот программа, которая считывает имя пользователя и приветствует его:
print('Как вас зовут?') name = input() # считываем строку и кладём её в переменную name print('Здравствуйте, ' + name + '!')
Мы будем писать программы, которые считывают данные, перерабатывают их и выводят какой-то результат. При запуске на компьютере такие программы считывают данные, которые пользователь вводит с клавиатуры, а результат выводят на экран.
Попробуем написать программу, которая считывает два числа и выводит их сумму. Для этого считаем два числа и сохраним их в переменные a и b , пользуясь оператором присваивания = . Слева от оператора присваивания в программах на Питоне ставится имя переменной — например, строка из латинских букв. Справа от оператора присваивания ставится любое выражение. Имя станет указывать на результат вычисления выражения. Проиграйте эту программу и посмотрите на результаты её работы:
a = input() b = input() s = a + b print(s)
Мы видим, что программа выводит 57 , хотя в реальной жизни 5 + 7 будет 12 . Это произошло потому, что Питон в третьей строчке «сложил» две строки, а не два числа. В Питоне две строки складываются так: к первой строке приписывается вторая.
Обратите внимание, что в визуализаторе содержимое переменных a и b заключено в кавычки. Это означает, что в a и b лежат строки, а не числа.
В Питоне все данные называются объектами. Число 2 представляется объектом «число 2», строка ‘hello’ – это объект «строка ‘hello’ ».
Каждый объект относится к какому-то типу. Строки хранятся в объектах типа str , целые числа хранятся в объектах типа int , дробные числа (вещественные числа) — в объектах типа float . Тип объекта определяет, какие действия можно делать с объектами этого типа. Например, если в переменных first и second лежат объекты типа int , то их можно перемножить, а если в них лежат объекты типа str , то их перемножить нельзя:
first = 5 second = 7 print(first * second) first = '5' second = '7' print(first * second)
Чтобы преобразовать строку из цифр в целое число, воспользуемся функцией int() . Например, int(’23’) вернет число 23 .
Вот пример правильной программы, которая считывает два числа и выводит их сумму:
a = int(input()) b = int(input()) s = a + b print(s)
Ввод в массив через запятую
Ввод через запятую
Программа от модератора Puporev’а. Обе программы работают, особенно вторая – с массивом. А вот к.
Ввод слова и чисел через запятую
Добрый день Помогите пожалуйста решить задачу. Мне нужно написать интерактивный калькулятор.
numbers = [int(number) for number in input().split(', ')]
Файловый ввод в структуру через запятую
Файл имеет несколько данных разделенных запятой, при добавлении в структуру выдает ошибку: Вызвано.
Файловый ввод в структуру через запятую
Как в программе реализовать файловый ввод в структуру данных разделенных запятой Пример файла.
Ввод данных через запятую, заполнение массива
Сколько ищу, никак не могу найти. Как можно сделать так, чтобы при вводе чисел в консоль (!через.
Ввод трех значений в один TextBox через запятую после присвоить их переменным a,b,c
Можно ли осуществить ввод трех значений после присвоить их трем переменным, все это в одном textbox
Сделать ввод чисел в виде списка через запятую, перебирать эти числа в цикле
Здравствуйте. Есть уже почти рабочий код, но не хватает одного,заменить некоторый код. Логику в.
через запятую в массив
Дана строка $str = ‘1,2,3,4,5,6’ надо занести данные из этой строки в таком типе $array = 1;.
Пользовательский ввод чисел в строку
Функция input() возвращает все в виде строки, поэтому нужно выполнить явную конвертацию, чтобы получить целое число. Для этого пригодится функция int() .
# вывод суммы двух чисел, введенных пользователем
num_1 = int(input("Введите первое число: "))
num_2 = int(input("Введите второе число: "))
print("Тип num_1:", type(num_1))
print("Тип num_2:", type(num_2))
result = num_1 + num_2
print("Сумма введенных чисел:", result)int(string) конвертирует переданную строку в целое число.
Ввода числа float
По аналогии можно использовать функцию float() .
float_1 = float(input("Введите число: "))
print("Тип float_1:", type(float_1))
result = float_1 ** 2
print("Число в квадрате:", result)Введите число: 1.8 Тип float_1: Число в квадрате: 3.24
Ввод чисел в строку через пробел
Но что произойдет, если вы не знаете количество элементов ввода?
Предположим, что от пользователя нужно получить список чисел и вернуть их сумму. При этом вы не знаете количество элементов в этом списке. Как же запросить ввод для него?
Для этого можно использовать split и функции map . Метод split() делит введенную строку на список подстрок. После этого map() выполняет функцию int() для каждого элемента списка.
entered_list = input("Введите список чисел, разделенных пробелом: ").split()
print("Введенный список:", entered_list)
num_list = list(map(int, entered_list))
print("Список чисел: ", num_list)
print("Сумма списка:", sum(num_list))Введите список чисел, разделенных пробелом: 1 34 4 6548 Введенный список: ['1', '34', '4', '6548'] Список чисел: [1, 34, 4, 6548] Сумма списка: 6587
- input() возвращает список, содержащий числа, разделенные запятыми.
- split() возвращает список строк, разделенных пробелами.
- map() выполняет операцию int() для всех элементов списка и возвращает объект map .
- list() конвертирует объект map снова в список.
Есть альтернативный способ получить список:
entered_list = input("Введите список чисел, разделенных пробелом: ").split()
num_list = [int(i) for i in entered_list]
print("Список чисел: ", num_list)Обработка ошибок при пользовательском вводе
Часто при конвертации типов возникает исключение ValueError .
Это происходит в тех случаях, когда введенные пользователем данные не могут быть конвертированы в конкретный тип.
Например, пользователь вводит случайную строку в качестве возраста.
num = int(input("Введите возраст: "))Функция int() ожидает целочисленное значение, обернутое в строку. Любое другое значение приводит к ошибке. Вот что будет, если, попробовать ввести «Двадцать»:
Введите возраст: Двадцать --------------------------------------------------------- ValueError Traceback (most recent call last) in ----> 1 num_1 = int(input('Введите возраст: ')) ValueError: invalid literal for int() with base 10: 'Двадцать'
Чтобы убедиться, что пользователь вводит только подходящую информацию, нужно обработать массу подобных ошибок. Для этого будем использовать перехват исключений.
try:
num = int(input("Введите число: "))
print("Все верно. Число:", num)
except ValueError:
print("Это не число.")Посмотрим, как ввод «Двадцать» сработает теперь:
Введите число: Двадцать Это не число.
В этом примере если пользователь вводит нечисловое значение, то возникает исключение. Однако оно перехватывается инструкцией except , которая в ответ выводит: «Это не число». Благодаря использованию конструкции try-except программа не прекратит работать при некорректном вводе.
Обучение с трудоустройством
Я создал этот блог в 2018 году, чтобы распространять полезные учебные материалы, документации и уроки на русском. На сайте опубликовано множество статей по основам python и библиотекам, уроков для начинающих и примеров написания программ.
Python Q CEO Pythonru admin@pythonru.com https://secure.gravatar.com/avatar/b16f253879f7349f64830c64d1da4415?s=96&d=mm&r=g CEO Pythonru Python Александр Редактор https://t.me/cashncarryhttps://pythonru.com/https://yandex.ru/q/profile/cashnc/ PythonRu.com admin@pythonru.com Alex Zabrodin 2018-10-26 Online Python, Programming, HTML, CSS, JavaScript
Как ввести целые числа, чтобы они были разделены запятыми?
В строке содержатся целые числа, разделенные запятыми. После последнего числа стоит точка. Создать массив из этих чисел.
Как ввести целые числа что бы они были разделенные запятыми? Ведь если есть запятая то это получается уже не целое число,а десятичное,и программа выдает ошибку.
Помогите пожалуйста!
Как ввести слова в 1 строку и чтобы они были в массиве?
ty ploho igraesh prekrashai. Yhodi lychshe igrat v lol eto tvoe. Нужно чтобы каждое слово.Цикл: В ячейки Excel записываются целые числа. Как исправить, чтобы числа были дробные?
Программа считает в цикле Y при заданных х и находит максимум и минимум функции. В ячейки Excel .Как ввести рандомайзер в код, чтоб в матрице были случайные числа и они выстраивались спиралью по возрастанию?
Как ввести рандомайзер в код , чтоб в матрице были случайные числа и они выстраивались спиралью по.
Сообщение было отмечено Karamb1 как решение
Решение
elements = list(map(int, input()[:-1].split(","))) print(elements) # >>> 1,2,3,4,5,6,7,8,9,10,11,12. #
Сообщение от Karamb1
Сообщение от Semen-Semenich
Arsegg, а не в любой? Как влияет эта самая "локаль" на программный код? Никак. При любой локали в Питоне:
x=1.5 # это полтора y=1,5 # а это кортеж из 1 и пятерки
Сообщение от Catstail
from locale import atof, LC_ALL, setlocale setlocale(LC_ALL, "ru_RU") assert atof("3,14") == 3.14
Сообщение от Catstail
Ну Гвидо подумал, что так делать не стоит - добавлять в спецификацию языка разные локали чисел с плавающей точкой))
Arsegg, и я с ним согласен на 110%! Если чиновникам нужно позарез, чтобы числа печатались с запятой - пусть не используют компьютеры! Есть масса другой оргтехники. В VBA долбанная запятая способна попортить много крови!
Нужно вывести 3 числа,чтобы они были кратны 5 и из их получалось число 15
Не могу никак придумать алгоритм,у меня есть число и мне нужно чтобы выводило цифры из которых.
Ввести предложение, слова в котором разделены пробелами и запятыми. После каждой запятой поставить пробел, если его там нет
Ввести предложение, слова в котором разделены пробелами и запятыми. После каждой запятой поставить.В десяти полях Edit переставить местами числа так, чтобы они были отсортированы по убыванию.
В десяти полях Edit переставить местами числа так, чтобы они были отсортированы по убыванию. .В десяти полях Edit переставить местами числа так, чтобы они были отсортированны по убыванию
Всем привет! Есть такая задача по Delphi: "В десяти полях Edit переставить местами числа так.