如何将整数转换为字符串?

42   ⟶   "42"

相反,请参见How do I parse a string to a float or int?。浮点数可以类似地处理,但处理小数点可能很棘手,因为浮点值不精确。有关更多具体建议,请参阅将浮点转换为字符串而不舍入。


当前回答

要管理非整数输入:

number = raw_input()
try:
    value = int(number)
except ValueError:
    value = 0

其他回答

>>> str(42)
'42'

>>> int('42')
42

文档链接:

int()str()

str(x)通过调用x.__str__()将任何对象x转换为字符串,如果x没有__str__方法,则调用repr(x)。

>>> 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

您可以使用%s或.format:

>>> "%s" % 10
'10'
>>>

Or:

>>> '{}'.format(10)
'10'
>>>

在Python=>3.6中,可以使用f格式:

>>> int_value = 10
>>> f'{int_value}'
'10'
>>>

对于希望将int转换为特定数字的字符串的人,建议使用以下方法。

month = "{0:04d}".format(localtime[1])

有关更多详细信息,您可以参考堆栈溢出问题显示带前导零的数字。