Рубрики
Без рубрики

Как я могу прочитать входы как цифры в Python?

Готовы ли вы взять свои знания Python на следующий уровень? Давайте немного весело с входами. Только вместо того, чтобы вы ввести свое имя, мы будем работать с номерами. Это хороший, простой калькулятор. Вы входите в два числа, и он добавляет их вместе, чтобы дать вам ответ. Просто, верно? Ну, … Как я могу прочитать входы как цифры в Python? Читать далее “

Автор оригинала: Andrew Nostvick.

Готовы ли вы взять свои знания Python на следующий уровень? Давайте немного весело с входами. Только вместо того, чтобы вы ввести свое имя, мы будем работать с номерами.

Это хороший, простой калькулятор. Вы входите в два числа, и он добавляет их вместе, чтобы дать вам ответ. Просто, верно? Ну давайте посмотрим, что произойдет, когда мы введем два числа.

Если математика не изменилась на ночь, мы довольно уверены в том, чтобы сказать, что 3 + 3 не равно 33 Отказ

Что не так?

Объяснение

Это то, что ваш выход – строка, а не целое число. Это проблема. Ваши входы выводят ответы в строковом формате, а не в целом Как будто они должны быть.

Это не так неловко, как вы думаете. Вы изучаете, и эта информация будет полезна для вас, когда вы прогрессируете в своих усилиях Python.

По умолчанию входы предлагают строковое значение. Это означает, что когда вы вводите число на свой вход, он не вводится 3, число. Он входит 3 в виде строки или «3» (да, что включает в себя кавычки. Если вы создали переменную, вы можете дать ему номер 3, или вы могли бы поставить его в цитаты и сделать его строкой. Вы делаете Последнее, когда вы помещаете его в свои входы.

Вот как вы в конечном итоге с 3 + 3 быть 33. Вы не можете правильно добавлять строки. Было бы похоже, если вы ввели имя на входе и добавили его на три. Вы получите это имя три раза в ряд (и без пробелов).

Вы не можете добавить струны вместе математически. И из-за этого вы не можете вычесть, умножить или разделить их. Вы получите ту же ошибку типа, сообщая вам, что у вас есть строка.

Как вы проверяете, является ли ваш вход строка или целое число в Python?

Если вы скептически относитесь к этому и хотите дополнительные доказательства того, что вы работаете с строками. Создать Печать () заявления для обоих А и B Отказ Добавьте тип на них обоих. Вы можете Формат Это как это:

Вам нужно будет обернуть обе переменные в Тип () функция. Введите самый простой способ для вас, чтобы определить, есть ли у вас строка, целое число, поплавок или логический.

Оба заявления должны дать вам Ответ, что означает, что это строка.

Теперь это не единственный метод, который вы можете использовать для определения типа данных объекта. Есть еще одна встроенная функция, которую вы можете использовать под названием Isinstance () Отказ

В отличие от Тип () Функция, Isinstance () Требуется два параметра: переменная и класс. Функция возвращает Правда или Ложь отвечать. Для этого примера вы будете обернуть переменную внутри Isinstance () функция, и вы бы включили int как второй параметр.

И когда вы запускаете код, это должно быть вашим результатом в CLI.

Сравнение, если вы измените второй параметр на утра тогда это вернется Правда как ответ на ваши входы.

С какой бы вы ни пошел для вашего сценария Python, зависит от вас. Оба работают великолепны. Если вы новичок в Python, можно лучше пойти с Тип () функция.

Конвертировать вашу входную строку в целое число

Не волнуйтесь, хотя. Вы получили это далеко в своем процессе Python. Вы можете преодолеть этот контроль. Что вам нужно сделать, это настроить вашу переменную. Вам нужно будет преобразовать ваши ответы на целые числа. Как ты это делаешь?

Это легко, если честно. И есть пара разных способов сделать это.

Изменение строки в целое число в Python

Один из встроенных функций, доступных для использования в Python, является целочисленная функция (или int () ). Это работает так:

Если у вас есть строка, как x Тогда все, что вам нужно сделать, это обновить вашу переменную и сделать х (х) Так что, когда ты Печать (х) ты получишь 1 Отказ Вы можете не заметить его сначала, но попробуйте сделать оператор печати, как Печать (х + 5) Отказ Ваш выход будет равен шести. Принимая во внимание, что если вы попробовали это другим способом с помощью строки, вы получите ошибку.

Теперь есть два способа, которыми вы можете использовать целочисленную функцию для предыдущего сценария, который мы пробовали. Вы можете обновить переменные после входов. Вот пример:

Который преобразует оба строки в цифры, и вы можете добавить/вычесть/умножить/разделить их легко в вашем операторе печати.

Когда вы запустите его, вы должны получать ответы, которые ваши сердца желают.

Дышите вздохом облегчения. Вы решили проблему.

Полное решение

Для вас более короткий путь преобразовать вашу строку в номер. Вы можете обернуть свои входы внутри целочисленного функции.

Попробуйте сами в нашем интерактивном оболочке браузера:

Упражнение : Вы все еще получаете неожиданное поведение при расчете арифметических операций на два числа?

Когда вы делаете это таким образом, вы можете избежать создания дополнительных переменных. Это держит ваш код, выглядит великолепно.

Если вам все еще неудобно использовать многие скобки, то для вас может быть проще в использовании первого метода.

Вам не нужно использовать встроенные функции. Там есть пакет Python, который может помочь.

Использование Pyinputplus для ваших входов

Если вы слышали или читаете «Автоматизируйте скучные вещи с Python» Тогда вы, вероятно, знаете о Al Sweigart и некоторые из программ Python, которые он сделан. Если вы тоже не слышали, то вам нужно проверить Его сайт Отказ Это идеально подходит для начинающих Python.

Один из пакетов Python, который он создал, который доступен на Github , известен как Pyinputplus Отказ Это пакет, который позволяет вам создавать входы для вашего сценария Python.

С этой программой вам не нужно беспокоиться о создании дополнительных переменных, просто для преобразования строки в целое число, как мы сделали выше. С помощью этого пакета вы можете создавать входы для номеров и целых чисел. И это работает как для Python 2 и 3.

Вам нужно будет установить его на вашу командную строку. Если вы используете PIP, то просто делайте Пип Установите Pyinputplus Отказ Оттуда вам нужно импортировать пакет в ваш сценарий, как это.

А затем есть две функции, которые вы можете использовать для создания целых чисел. Вы можете использовать inputnum или Infoint функция. Для этого мы использовали последнее. Либо один из них будет работать. Вы можете отформатировать свой скрипт, как это:

Лучшая часть об этом пакете – вам даже не нужно беспокоиться и проверять, является ли это строку или целое число. У вас есть то, что вам нужно, и это экономит вам время.

Что приятно о Pyinputplus Разве это позволяет вам получить творчество с вашими входами. Там так много, вы можете сделать с этим. Играйте с этим. Вы не будете разочарованы.

Какой бы маршрут, который вы идете, знаете, что есть решения, которые помогут вам. Что похоже на проблему и разочарование, теперь не будет таким, когда вы его понимаете. Я обещаю, что усилия по программированию Python будут стоить этого.