Я хочу преобразовать целое число в строку в Python. Напрасно я привожу его в типовом виде:
d = 15
d.str()
Когда я пытаюсь преобразовать его в строку, выдается ошибка, типа int
не имеет атрибута str
.
>>> str(10)
'10'
>>> int('10')
10
Ссылки на документацию:
Преобразование в строку выполняется с помощью встроенной функции str()
, которая в основном вызывает метод __str__()
своего параметра.
Попробуйте это:
str(i)
Нет не играла и не приведение типов в Python. Вы должны превратить вашу переменную в явном виде.
Чтобы преобразовать объект в строку, которую вы используете НТР ()
функция. Он работает с любым объектом, который имеет метод, называемый метода__STR__()
определена. На самом деле
str(a)
эквивалентно
a.__str__()
То же самое, если вы хотите, чтобы преобразовать что-то в int, float, и т. д.
Для управления нецелым входы:
number = raw_input()
try:
value = int(number)
except ValueError:
value = 0
>>> i = 5
>>> print "Hello, world the number is " + i
TypeError: must be str, not int
>>> s = str(i)
>>> print "Hello, world the number is " + s
Hello, world the number is 5
В Python => 3.6 вы можете использовать Ф
форматирование:
>>> int_value = 10
>>> f'{int_value}'
'10'
>>>
Для тех, кто хочет преобразовать int в строку в конкретные цифры, этот метод рекомендуется.
month = "{0:04d}".format(localtime[1])
Для более подробной информации, вы можете обратиться к переполнению стека вопрос https://stackoverflow.com/questions/134934/display-number-with-leading-zeros.
Для Python 3.6 можно использовать F-строки новая функция для преобразования в строку и он's быстрее по сравнению с стр() функция, она используется так:
age = 45
strAge = f'{age}'
Python предоставляет НТР() функция для этого.
digit = 10
print(type(digit)) # will show <class 'int'>
convertedDigit= str(digit)
print(type(convertedDigit)) # will show <class 'str'>
Для более подробного ответа вы можете проверить эту статью: преобразование int в строку в Python и Python-строку в int
С введением Ф-строки в Python 3.6, это также будет работать:
Ф'{10}' == '10'
Это на самом деле быстрее, чем звонить (ул.)
, за счет читабельности.
На самом деле, это's быстрее, чем %Х
форматирование строк и .формат()
!