Відповіді:
>>> str(10)
'10'
>>> int('10')
10
Посилання на документацію:
Перетворення в рядок здійснюється за допомогою вбудованої str()
функції, яка в основному називає __str__()
метод його параметра.
Спробуйте це:
str(i)
У Python не існує типового і примусового типу. Ви повинні конвертувати свою змінну явним чином.
Для перетворення об'єкта в рядок ви використовуєте str()
функцію. Він працює з будь-яким об’єктом, який має метод, який називається __str__()
визначеним. Фактично
str(a)
еквівалентно
a.__str__()
Те саме, якщо ви хочете щось перетворити на int, float тощо.
>>> 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 ви можете використовувати нову функцію f-strings для перетворення в рядок, і це швидше порівняно з функцією str (), вона використовується так:
age = 45
strAge = f'{age}'
З цієї причини Python забезпечує функцію str ().
digit = 10
print(type(digit)) # will show <class 'int'>
convertedDigit= str(digit)
print(type(convertedDigit)) # will show <class 'str'>
Для більш детальної відповіді ви можете переглянути цю статтю: Перетворення Python Int в String та Python String в Int
На найдостойніший спосіб, на мою думку, це ``.
i = 32 --> `i` == '32'
Для тих, хто хоче перетворити int в рядок у конкретні цифри, рекомендується наведений нижче метод.
month = "{0:04d}".format(localtime[1])
Для отримання докладніших відомостей ви можете звернутися до питання щодо переповнення стека із записом номер відображення з провідними нулями .
З введенням f-рядків у Python 3.6 це також буде працювати:
f'{10}' == '10'
Це насправді швидше, ніж дзвінки str()
, ціною читабельності.
Насправді, це швидше, ніж %x
форматування рядків і .format()
!