Как перевести число в строку python
Перейти к содержимому

Как перевести число в строку python

  • автор:

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

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

Алексей Кодов
Автор статьи
7 июля 2023 в 17:34

Преобразование данных одного типа в другой является обычной задачей в программировании. В Python типы данных можно легко преобразовать друг в друга. Это облегчает обработку данных и помогает избежать ошибок. В этой статье рассмотрим, как преобразовать строку в число (целое или дробное).

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

В Python для преобразования строки в целое число используется встроенная функция int() . Она принимает на вход строку и возвращает целое число. Если строка не может быть преобразована в целое число, Python выдаст ошибку ValueError .

число = int("123") print(число) # Выведет: 123

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

Если нужно преобразовать строку в число с плавающей точкой (дробное число), используется функция float() . Она работает аналогично функции int() , но возвращает число с плавающей точкой.

дробное = float("123.45") print(дробное) # Выведет: 123.45

Нужно быть аккуратным с преобразованием строк в числа, так как если строка содержит символы, которые не могут быть интерпретированы как число (например, буквы), Python выдаст ошибку. Поэтому перед преобразованием строки в число рекомендуется убедиться, что это возможно.

Для проверки, можно ли строку преобразовать в число, можно использовать метод isdigit() для проверки целых чисел и немного более сложную проверку для чисел с плавающей точкой:

строка = "123" print(строка.isdigit()) # Выведет: True строка_с_плавающей_точкой = "123.45" try: float(строка_с_плавающей_точкой) print(True) except ValueError: print(False) # Если строка не может быть преобразована во float, выведет False

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

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

Преобразовывать числа в строки в Python можно с помощью метода str().

Вы должны поместить число или переменную в скобки метода, а затем это числовое значение будет преобразовано в строковое.

Чтобы преобразовать целое число 12 в строковое значение, вы можете передать его в метод str():

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

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

user = “8host”
lines = 50
print(“Congratulations, ” + user + “! You just wrote ” + lines + ” lines of code.”)

Однако если вы запустите этот код, он вернет ошибку:

TypeError: Can’t convert ‘int’ object to str implicitly

В Python нельзя объединять строки и целые числа, потому значение переменной lines нужно преобразовать в строку:

user = «8host»
lines = 50
print(«Congratulations, » + user + «! You just wrote » + str(lines) + » lines of code.»)

Если вы снова запустите код, вы увидите такой результат:

Congratulations, 8host! You just wrote 50 lines of code.

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

Samsung преодолевает конкуренцию благодаря прозрачному дисплею Micro-LED

Favorite

Добавить в избранное

Главное меню » Программирование » Python » Как преобразовать целое число в строку в Python

(1 оценок, среднее: 5,00 из 5)

Python 3 - Обзор

Python имеет несколько встроенных типов данных. Иногда при написании кода Python вам может потребоваться преобразовать один тип данных в другой. Например, объедините строку и целое число, сначала вам нужно преобразовать целое число в строку.

В этой статье объясняется, как преобразовать целое число Python в строку.

Функция str() в Python

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

Функция str() возвращает строковую версию данного объекта. Он принимает следующие формы:

class str(object='') class str(object=b'', encoding='utf-8', errors='strict')
  • object — Объект, который нужно преобразовать в строку.

Функция принимает три аргумента, но обычно при преобразовании целого числа в строку вы передаете функции только один аргумент (object).

Преобразование целого числа Python в строку

Чтобы преобразовать целое число 23 в строковую версию, просто передайте это число в функцию str():

str(23) type(days)

Кавычки около 23 указывают на то, что число не является целым числом, а является объектом строкового типа. Также функция type() показывает, что объект является строкой.

В Python строки объявляются с использованием одинарных (‘), двойных («) или тройных кавычек («»»).

Объединение строк и целых чисел

Попробуем объединить строки и целые числа с помощью оператора + и распечатать результат:

number = 6 lang = "Python" quote = "Есть " + number + " операторов в " + lang + "." print(quote)

Python выдаст ошибку исключения TypeError, потому что он не может объединить строки и целые числа:

Traceback (most recent call last): File "", line 1, in TypeError: can only concatenate str (not "int") to str

Чтобы преобразовать целое число в строку, передайте целое число в функцию str():

number = 6 lang = "Python" quote = "Есть " + str(number) + " операторов в " + lang + "." print(quote)

Теперь, когда вы запустите код, он будет успешно выполнен:

Есть 6 операторов в Python.

Читать Основные команды в Python

Есть и другие способы объединения строк и чисел.

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

number = 6 lang = "Python" quote = "Есть <> операторов в <>.".format(number, lang) print(quote)
Есть 6 операторов в Python.

В Python 3.6 и новее вы можете использовать f-строки, которые представляют собой буквальные строки с префиксом ‘f’, содержащие выражения в фигурных скобках:

number = 6 lang = "Python" quote = f"Есть операторов в ." print(quote)
Есть 6 операторов в Python.

Наконец, вы можете использовать старое% -форматирование:

number = 6 lang = "Python" quote = "Есть %s операторов в %s." % (number, lang) print(quote)
Есть 6 операторов в Python.

Вывод

В Python вы можете преобразовать целое число в строку с помощью функции str().

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Python. Средства преобразования строк и одиночных символов.

Средства преобразования строк и одиночных символов. Функции int() , str() , repr() , float() , ord() , chr()

Поиск на других ресурсах:

1. Функция int() . Преобразование в целое число

Функция int() есть конструктором класса int . Эта функция возвращает целочисленный объект, который может быть образован из:

  • целого числа или объекта;
  • числа или объекта с плавающей запятой;
  • строки символов или строчного объекта, содержащего последовательность цифр.

Функция может вызваться одним из двух способов:

  • int() – в этом случае функция возвращает значение 0;
  • int(x, base) – в этом случае обрабатывается объект x . Значение base определяет систему исчисления, в которую нужно конвертировать объект x . По умолчанию base = 10. Если явным образом задана система исчисления, то тип объекта x должен быть строчным, другие типы в этом случае запрещаются.

Пример.

# Функция int() # 1. Вызов без параметров a = int() # a = 0 # 2. Вызов с целочисленным значением a = int(15) # a = 15 # 3. Вызов с числом с плавающей запятой a = int(2.85) # a = 2 # 4. Вызов со строкой s = '28' a = int(s) # a = 28 # 5. Вызов с конвертированием в другую систему исчисления - только для строк # конвертировать 155 из 16-й системы в десятичную s = '155' a = int(s, 16) # a = 341, значение 155 в 16-й системе # конвертировать 111 из двоичной системы в десятичную s = '111' a = int(s, 2) # a = 7 # 6. Так нельзя # a = int(111,2) - ошибка, нельзя конвертировать число, должна быть строка
2. Функция str() . Преобразование в строку

Функция str() есть конструктором класса str . Функция возвращает объект в виде строки. Функция используется для конвертирования из одного типа (например числового) в строчный тип.

Функция имеет две реализации:

  • str() – без параметров. В этом случае функция возвращает пустую строку;
  • str(x) – с параметром x . Параметр x есть объектом некоторого типа. Данный вызов может также содержать еще два дополнительных параметра, которые определяют систему кодирования (по умолчанию система кодирования устанавливается utf-8) и схему обработки ошибок (по умолчанию установлена схема вызова исключения типа UnicodeError).

Результат функции str() может использоваться для вывода в функции print() .

Пример.

# Функция str() # 1. Вызов с целым числом x = 25 s = str(x) # s = '25' - строка символов # 2. Вызов с числом с плавающей запятой y = 2.338 s = str(y) # s = '2.338' # 3. Вызов со строкой s = str("3.778") # s = '3.778' # 4. Вызов со строкой, которая не отображает число s = str("abcdef") # s = 'abcdef' # 5. Вызов без параметров s = str() # s = ''
3. Функция repr() . Преобразование в строку как литерал

Функция repr() реализует преобразование в строку таким образом, если бы эта строка была литералом в программном коде.
Функция repr() может быть применена к:

  • целым числам;
  • числам с плавающей запятой;
  • строкам символов.

Пример 1. Конвертировать целое число в строку, которая представлена литералом.

# Функция repr() # конвертировать целое число в строку number = 25 snumber = repr(number) # snumber = '25' - как строка символов number = -100029 snumber = repr(number) # snumber = '-100029' - как строка символов

Пример 2. Конвертировать в строку число с плавающей запятой.

# Функция repr() # конвертировать число с плавающей запятой в строку number = 25.233 snumber = repr(number) # snumber = '25.233' snumber = repr(-1e-2) # snumber = '-0.01'

Пример 3. Конвертировать строку символов в другую строку так если бы она была литералом.

# Функция repr() # конвертировать строку в строку s1 = 'Text string' s2 = repr(s1) # s2 = "'Text string'" s1 = "Text string" s2 = repr(s1) # s2 = "'Text string'"

Пример 4. Конвертирование кортежа.

# Функция repr() - обработка кортежа x = ( 2.85, 15, 'Hello') str_x = repr(x) # str_x = "(2.85, 15, 'Hello')"
4. Какое отличие между функциями repr() и str() ?

В языке Python функции repr() и str() преобразуют произвольные объекты в их строчное представление.

Разница между функциями проявляется в том, как они конвертируют строку.
Функция repr() возвращает представление строчного объекта в виде строки программного кода, которую можно выполнить чтобы воссоздать этот объект. Иными словами, функция repr() возвращает строку в виде строки. При использовании такого объекта в функции print() будут выведены ограничивающие строку кавычки (строка во вложенных кавычках).
В свою очередь, функция str() используется для конвертирования строки в строку без ее преобразования в предшествующую форму. При использовании результата функции str() в функции print() будет выведена обычная строка в одинарных кавычках.

Например.

# Функции repr() и str() # конвертировать строку в строку s1 = 'Text string' # функция repr() s2 = repr(s1) # s2 = "'Text string'" # функция str() s3 = str(s1) # s3 = 'Text string'

Как видно из вышеприведенного кода, функция repr() возвращает строку как литерал

"'Text string'"

а функция str() возвращает обычную строку

'Text string'
5. Функция float() . Преобразование в число с плавающей запятой

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

  • float() – без параметра. В этом случае возвращается значение 0.0;
  • float(x) – где параметр x задает число или строку, которую нужно конвертировать.

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

  • «Infinity» или «inf» – обозначают бесконечность. Бесконечность может быть отрицательной: «-Infinity» или «-inf» ;
  • «nan» – обозначает неопределенность.

Пример.

# Функция float() - возвращает число с плавающей запятой # 1. Результат получается из числа a = 25 # целое число x = float(a) # x = 25.0 b = 21.555e-2 # число с плавающей запятой x = float(b) # x = 0.21555 # 2. Результат получается из строки # s = 'abcdef' - ошибка, строка не имеет вида числа # x = float(s) # строка в экспоненциальном формате s = '-1.23e-2' x = float(s) # x = -0.0123 # строка в обычном формате s = "288.75" x = float(s) # x = 288.75 - как число # использование в выражении x = float(5.2)+float(3.8)*float(-2.1) # x = -2.7799999999999994 # использование со знаком + x = float('+2.34') # x = 2.34 # использование со словом "Infinity" или "inf" x = float("Infinity") # x = inf x = float('-inf') # x = -inf - с отрицательным знаком # использование со словом "nan" x = float("nan") # x = nan x = float() # x = 0.0
6. Функции ord() и chr() . Преобразование кодов символов

Функции ord() и chr() используются для одиночных символов. Эти функции являются инверсными друг к другу.
Функция chr() позволяет получать символ на основе его кода. Функция ord() позволяет получить код на основе представления символа.

Общая форма вызова функции chr() следующая

c = chr(i)

где c – символьное представление символа с Unicode-кодом i .

Общая форма вызова функции ord()

i = ord(c)

где i – код символа c .

Пример.

# Функции chr() и ord() # 1. Функция chr() code = 49 # код в десятичной системе исчисления symbol = chr(code) # symbol = '1' - цифра '1' code = 100 symbol = chr(code) # symbol = 'd' code = 7785 symbol = chr(code) # symbol = 'ṩ' - кодирование Unicode # 2. Функция ord symbol = '5' code = ord(symbol) # code = 53 symbol = 'ṩ' code = ord(symbol) # code = 7785 symbol = ' ' # символ пробел code = ord(symbol) # code = 32
7. Можно ли в Python сложить строку с числом?

Нет, нельзя. Если нужно сложить число в форме строки, то для этого используется соответствующая функция преобразования. Если нужно сложить две строки (конкатенация строк), то число конвертируется в строку с помощью соответствующей функции.

Пример.

# Сложить строку с числом не получится s = '25' # это строка a = 30 # это число # Случай 1. Сложить (суммировать) два числа # Предварительно нужно конвертировать строку в число b = int(s) res = a + b print('As numbers: a + s = ', res) # Случай 2. Сложить две строки # Предварительно нужно конвертировать число в строку res_str = str(a) + s print('As strings: a + s = ', res_str)

Результат выполнения программы

As numbers: a + s = 55 As strings: a + s = 3025

Связанные темы

  • Строки. Общие понятия. Объявление строки. Операции над строками. Примеры
  • Экранированные последовательности. Неформатированные строки. Многострочные блоки текста
  • Доступ по индексам. Срезы. Получение фрагмента строки. Примеры

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *