在Python中将整数转换为字符串

42   ⟶   "42"

3716518 次浏览

str(i)
>>> str(42)'42'
>>> int('42')42

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

>>> i = 5>>> print "Hello, world the number is " + iTypeError: must be str, not int>>> s = str(i)>>> print "Hello, world the number is " + sHello, world the number is 5

Python中没有类型转换和类型强制。您必须以显式方式转换您的变量。

要将对象转换为字符串,您可以使用str()函数。它适用于任何定义了__str__()方法的对象。事实上

str(a)

相当于

a.__str__()

如果您想将某些内容转换为intfloat等,则相同。

要管理非整数输入:

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

在我看来,最体面的方式是“。

i = 32   -->    `i` == '32'

您可以使用%s.format

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

或:

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

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

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

有关更多详细信息,您可以参考Stack Overflow问题显示带前导零的数字

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

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

随着Python 3.6中f字串的引入,这也将起作用:

f'{10}' == '10'

它实际上比调用str()更快,但代价是易读性。

事实上,它比%x字符串格式和.format()更快!

对于Python 3.6,您可以使用f字串新功能转换为字符串,并且与str()函数相比更快。它是这样使用的:

age = 45strAge = f'{age}'

因此,Python提供了str()函数。

digit = 10print(type(digit)) # Will show <class 'int'>convertedDigit = str(digit)print(type(convertedDigit)) # Will show <class 'str'>

有关更详细的答案,您可以查看这篇文章:转换Python Int到String和Python String到Int

这里有一个更简单的解决方案:

one = "1"print(int(one))

输出控制台

>>> 1

在上面的程序中,int()用于转换整数的字符串表示。

注意:字符串格式的变量只有在变量完全由数字组成时才能转换为整数。

以同样的方式,str()用于将整数转换为字符串。

number = 123567a = []a.append(str(number))print(a)

我使用列表打印输出以突出显示变量(a)是一个字符串。

输出控制台

>>> ["123567"]

但是要了解列表存储字符串和整数的区别,请先查看下面的代码,然后查看输出。

代码

a = "This is a string and next is an integer"listone=[a, 23]print(listone)

输出控制台

>>> ["This is a string and next is an integer", 23]

有几种方法可以在python中将整数转换为字符串。您可以使用[str(这里的整数)]函数、f-string[f'{integer here}']、. form()函数 [ '{}'.格式(这里的整数),甚至'%s'%关键字['%s'%integer here]。所有这些方法都可以将整数转换为字符串。

见下面的例子

#Examples of converting an intger to string
#Using the str() functionnumber = 1convert_to_string = str(number)print(type(convert_to_string)) # output (<class 'str'>)
#Using the f-stringnumber = 1convert_to_string = f'{number}'print(type(convert_to_string)) # output (<class 'str'>)
#Using the  {}'.format() functionnumber = 1convert_to_string = '{}'.format(number)print(type(convert_to_string)) # output (<class 'str'>)
#Using the  '% s '% keywordnumber = 1convert_to_string = '% s '% numberprint(type(convert_to_string)) # output (<class 'str'>)