Введение
Python имеет несколько встроенных типов данных. Иногда при написании кода на Python может потребоваться преобразовать один тип данных в другой. Например, если объединить строку и целое число, сначала вам нужно будет преобразовать целое число в строку.
В этой статье объясняется, как преобразовать целое число в строку (int в строку) с помощью Python.
Функция Str() в Python
В Python мы можем преобразовывать различные типы данных в строки с помощью встроенной функции str()
.
Функция str()
возвращает строковую версию данного объекта. Он принимает следующие формы:
class str(object='')
class str(object=b'', encoding='utf-8', errors='strict')
object
- Объект для преобразования в строку.
Функция принимает три аргумента, но обычно, когда вы конвертируете целое число в строку, вы передаете в функцию только один аргумент ( object
).
Преобразование целого числа в строку
Чтобы преобразовать целое число 23 в строковую версию, просто передайте число в функцию str()
:
days = "23"
str(23)
type(days)
'23'
<class 'str'>
Кавычки вокруг числа 23 указывают, что это число не является целым числом, а является строковым объектом. Также функция type()
показывает, что объект является строкой.
В Python строки объявляются с использованием одинарных ( '
), двойных ( "
) или тройных ( """
) кавычек.
Объединение строк и целых чисел
Давайте попробуем соединить строки и целые числа с помощью оператора +
и вывести результат:
number = 6
lang = "Python"
quote = "There are " + number + " relational operators in " + lang + "."
print(quote)
Python выдаст ошибку исключения TypeError
, потому что он не может конкатенировать строки и целые числа:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only concatenate str (not "int") to str
Чтобы преобразовать целое число в строку, передайте целое число функции str()
:
number = 6
lang = "Python"
quote = "There are " + str(number) + " relational operators in " + lang + "."
print(quote)
Теперь, когда вы запустите код, он будет работать правильно:
There are 6 relational operators in Python.
Есть и другие способы конкатенации строк и чисел.
Встроенный класс string предоставляет метод format()
, который форматирует заданную строку, используя произвольный набор позиционных аргументов и ключевых слов:
number = 6
lang = "Python"
quote = "There are {} relational operators in {}.".format(number, lang)
print(quote)
There are 6 relational operators in Python.
В Python 3.6 и более поздних версиях вы можете использовать f-string
, которые представляют собой буквенные строки с префиксом 'f'
содержащие выражения внутри фигурных скобок:
number = 6
lang = "Python"
quote = f"There are {number} relational operators in {lang}."
print(quote)
There are 6 relational operators in Python.
Наконец, вы можете использовать старое %-formatting
:
number = 6
lang = "Python"
quote = "There are %s relational operators in %s." % (number, lang)
print(quote)
There are 6 relational operators in Python.
Вывод
В Python вы можете преобразовать целое число в строку с помощью функции str()
.