Don*_*ner 111
myvariable = 4
mystring = str(myvariable) # '4'
Run Code Online (Sandbox Code Playgroud)
另外,尝试repr:
mystring = repr(myvariable) # '4'
Run Code Online (Sandbox Code Playgroud)
这在python中称为"转换",并且很常见.
Bri*_*n S 48
str用于生成对象数据的字符串表示.如果您正在编写自己的课程并希望str为您工作,请添加:
def __str__(self):
return "Some descriptive string"
Run Code Online (Sandbox Code Playgroud)
print str(myObj)会打电话myObj.__str__().
repr是一种类似的方法,通常会产生关于类信息的信息.对于大多数核心库对象,repr在尖括号之间生成类名(有时是某些类信息).repr例如,只需在交互窗格中输入对象即可,而无需使用print或其他任何内容.
您可以定义repr自己对象的行为,就像您可以定义以下行为一样str:
def __repr__(self):
return "Some descriptive string"
Run Code Online (Sandbox Code Playgroud)
>>> myObj在您的交互窗格中,或者repr(myObj),将导致myObj.__repr__()
Mad*_*hav 15
我看到所有答案都推荐使用str(object).如果你的对象有超过ascii字符,它可能会失败,你会看到错误ordinal not in range(128).当我用英语以外的语言转换字符串列表时,我就是这种情况
我通过使用解决了它 unicode(object)
mik*_*iku 11
使用str内置:
x = str(something)
Run Code Online (Sandbox Code Playgroud)
例子:
>>> str(1)
'1'
>>> str(1.0)
'1.0'
>>> str([])
'[]'
>>> str({})
'{}'
...
Run Code Online (Sandbox Code Playgroud)
从文档:
返回一个包含对象的可打印表示的字符串.对于字符串,这将返回字符串本身.与repr(object)的区别在于str(object)并不总是尝试返回eval()可接受的字符串; 它的目标是返回一个可打印的字符串.如果没有给出参数,则返回空字符串''.