Как перевести из str в int python

от admin

How can I convert a string to an int in Python?

The output I’m getting for my little example app is the following:

This is because the addition() method is taking the input() as strings and not numbers. How can I use them as numbers?

Here is my entire script:

8 Answers 8

Since you’re writing a calculator that would presumably also accept floats ( 1.5, 0.03 ), a more robust way would be to use this simple helper function:

That way if the int conversion doesn’t work, you’ll get a float returned.

Edit: Your division function might also result in some sad faces if you aren’t fully aware of how python 2.x handles integer division.

In short, if you want 10/2 to equal 2.5 and not 2 , you’ll need to do from __future__ import division or cast one or both of the arguments to float, like so:

Как преобразовать String в Int и Int в String в Python?

В этой статье мы разберемся с преобразованием Python String в Int и int в преобразование строки. В Python значения никогда не приводятся к типу неявно. Давайте узнаем, как явно приводить типы переменных.

1. Преобразование строки Python в int

Метод Python int() позволяет преобразовать любое значение типа String в целочисленное значение.

Python также предоставляет нам эффективный вариант преобразования чисел и значений типа String в целочисленные значения с определенной базой в соответствии с системой счисления.

В приведенном выше фрагменте кода мы преобразовали «100» в целочисленное значение с основанием 8 и основанием 16 соответственно.

ValueError Exception при преобразовании строки Python в int

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

В приведенном ниже примере, если вы хотите преобразовать строку «A» в целочисленное значение A с основанием 16, и мы не передаем base = 16 в качестве аргумента методу int(), тогда это вызовет исключение ValueError.

Поскольку, хотя ‘A’ является шестнадцатеричным значением, оно не принадлежит к десятичной системе счисления, оно не будет рассматривать A как эквивалент десятичного числа 10, пока мы не передадим base = 16 в качестве аргумента в функцию int().

Преобразование списка целых чисел в список строк

Список Python, содержащий целочисленные элементы, может быть преобразован в список значений String с помощью метода int() вместе со списком понимания.

2. Преобразование Python int в String

Метод Python str() позволяет преобразовать любое значение целочисленного типа в значение String.

Преобразование строки в число в Python. Особенности преобразования числа в строку

Python_Deep_21.1-5020-77b56f.png

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

Чтобы осуществить преобразование строки в целое число либо число с плавающей точкой, в Python используют функции int и float. Если вы захотите выполнить преобразование без применения данных функций, то получите ошибку. Например, к ошибке приведёт следующий код:

Преобразование строки в целое число с помощью int() в Python

Давайте посмотрим на следующий участок кода:

С его помощью мы выведем значение переменной «c», которое будет представлять собой сумму переменных «str_a» и «b».

Преобразуем десятичную строку в число с плавающей точкой в Python

Для преобразования строки в число с плавающей точкой мы можем использовать float:

Однако учтите, что если вы захотите задействовать тут функцию int() , это приведёт к ошибке.

Преобразуем список строковых чисел в список целых чисел в Python

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

Мы выведем новый список, который будет состоять из целых чисел, полученных из строк.

Преобразуем список строк в список чисел с плавающей точкой в Python

Аналогично можно применять float вместо int для выполнения преобразования списка, включающего в себя строки из целых чисел:

Преобразование строки с запятыми в число в Python

Что делать, если у нас строка наподобие «1,000,000»? Если мы попробуем выполнить её преобразование с помощью функций int() либо float() , мы получим ошибку.

Одно из решений — применение import locale:

Приём работает, но он не идеален. Другое решение — заменить запятые на пустые строки, а потом применить уже известную нам функцию int:

Результат — целое значение. Это же решение мы можем использовать и для преобразования строки в число с плавающей точкой в Python.

Преобразование строки в число при расчёте високосного года в Python

Как известно, пользовательский ввод в «Пайтоне» воспринимается как строка. К примеру, в следующем коде программа попросит пользователя ввести год, а после ввода значений программа сообщит, является ли этот год високосным. При этом введённое значение сначала будет преобразовано в целое число, а потом будет задействована формула расчёта високосного года:

Читать:
Как играть в города

Таким образом происходит преобразование вводимой строки в целое число, а потом это число применяется для расчёта.

Как преобразовать целое число в строку в Python?

При выполнении преобразования целых чисел в строки используется функция str() . Она принимает объект, который может иметь тип int, float, double и так далее.

Давайте посмотрим на пример преобразования переменной int в строку, которая потом применяется как строка для конкатенации:

Результат будет следующим:

Кстати, если бы целочисленная переменная была нами использована без str() , результатом стала бы ошибка TypeError.

Python Convert String to Int – How to Cast a String in Python

Dionysia Lemonaki

Dionysia Lemonaki

Python Convert String to Int – How to Cast a String in Python

When you’re programming, you’ll often need to switch between data types.

The ability to convert one data type to another gives you great flexibility when working with information.

There are different built-in ways to convert, or cast, types in the Python programming language.

In this article, you’ll learn how to convert a string to an integer.

Let’s get started!

Data types in Python

Python supports a variety of data types.

Data types are used for specifying, representing, and categorizing the different kinds of data that exist and are used in computer programs.

Also, different operations are available with different types of data – one operation available in one data type is often not available in another.

One example of a data type is strings.

Strings are sequences of characters that are used for conveying textual information.

They are enclosed in single or double quotation marks, like so:

Ints, or integers, are whole numbers.

They are used to represent numerical data, and you can do any mathematical operation (such as addition, subtraction, multiplication, and division) when working with integers.

Integers are not enclosed in single or double quotation marks.

Data type conversion

Sometimes when you’re storing data, or when you receive input from a user in one type, you’ll need to manipulate and perform different kinds of operations on that data.

Since each data type can be manipulated in different ways, this often means that you’ll need to convert it.

Converting one data type to another is also called type casting or type conversion. Many languages offer built-in cast operators to do just that – to explicitly convert one type to another.

How to convert a string to an integer in Python

To convert, or cast, a string to an integer in Python, you use the int() built-in function.

The function takes in as a parameter the initial string you want to convert, and returns the integer equivalent of the value you passed.

The general syntax looks something like this: int(«str») .

Let’s take the following example, where there is the string version of a number:

To convert the string version of the number to the integer equivalent, you use the int() function, like so:

A practical example of converting a string to an int

Say you want to calculate the age of a user. You do this by receiving input from them. That input will always be in string format.

So, even if they type in a number, that number will be of <class ‘str’> .

If you want to then perform mathematical operations on that input, such as subtracting that input from another number, you will get an error because you can’t carry out mathematical operations on strings.

Check out the example below to see this in action:

The error mentions that subtraction can’t be performed between an int and a string.

You can check the data type of the input by using the type() method:

The way around this and to avoid errors is to convert the user input to an integer and store it inside a new variable:

Conclusion

And there you have it — you now know how to convert strings to integers in Python!

If you want to learn more about the Python programming language, freeCodeCamp has a Python Certification to get you started.

You’ll start with the fundamentals and progress to more advance topics like data structures and relational databases. In the end, you’ll build five projects to practice what you learned.

Похожие статьи