如何将整数转换为字符串?
42 ⟶ "42"
相反,请参见How do I parse a string to a float or int?。浮点数可以类似地处理,但处理小数点可能很棘手,因为浮点值不精确。有关更多具体建议,请参阅将浮点转换为字符串而不舍入。
如何将整数转换为字符串?
42 ⟶ "42"
相反,请参见How do I parse a string to a float or int?。浮点数可以类似地处理,但处理小数点可能很棘手,因为浮点值不精确。有关更多具体建议,请参阅将浮点转换为字符串而不舍入。
当前回答
>>> 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
其他回答
>>> str(42)
'42'
>>> int('42')
42
文档链接:
int()str()
str(x)通过调用x.__str__()将任何对象x转换为字符串,如果x没有__str__方法,则调用repr(x)。
对于Python3.6,您可以使用f-string新特性转换为string,与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'>
要获得更详细的答案,您可以查看本文:将PythonInt转换为String,将PythonString转换为Int
这里有一个更简单的解决方案:
one = "1"
print(int(one))
输出控制台
>>> 1
在上面的程序中,int()用于转换整数的字符串表示。
注意:只有当变量完全由数字组成时,字符串格式的变量才能转换为整数。
同样,str()用于将整数转换为字符串。
number = 123567
a = []
a.append(str(number))
print(a)
我使用一个列表来打印输出,以突出显示变量(a)是一个字符串。
输出控制台
>>> ["123567"]
但要了解列表如何存储字符串和整数的区别,请先查看下面的代码,然后查看输出。
Code
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]
要管理非整数输入:
number = raw_input()
try:
value = int(number)
except ValueError:
value = 0
随着Python 3.6中f-string的引入,这也将起作用:
f'{10}' == '10'
它实际上比调用str()更快,代价是可读性。
事实上,它比%x字符串格式化和.format()更快!