如何使用str方法以逗号分隔和方括号显示列表 例如:
试验:
my_list = UnorderedList()
表示范围(5)中的i:
my_list.add(i)
打印(my_list)
结果:
[4,3,2,1,0]
答案 0 :(得分:1)
print
函数(或Python 2.x中的语句)已经在其参数上调用str
,因此您不必执行任何:
>>> print([1, 2, 3])
[1, 2, 3]
>>> print([])
[]
>>> a = [1, 2, 3]
>>> print(a)
[1, 2, 3]
正如文件所说:
所有非关键字参数都转换为
str()
之类的字符串并写入流...
如果除了打印之外还希望将字符串用于其他目的(例如,写入文件),您可以随时在其上调用str
。它只是一个像其他任何函数一样的函数(嗯,类型构造函数,但不要担心):
>>> s = str(a)
>>> s
'[1, 2, 3]'
正如文档所解释的那样:
str(object)
返回object.__str__()
,这是对象的“非正式”或可打印的字符串表示形式。对于字符串对象,这是字符串本身。如果对象没有__str__()
方法,则str()
会回退到repr(object)
。
答案 1 :(得分:0)
您可以简单地使用str()
函数并将列表作为要显示的参数传递。例如,
tmp_list = [1,2,3,4]
print str(tmp_list)
答案 2 :(得分:0)
它们用于提供字符串表示形式,而repr用于专门在控制台或打印中表示对象时提供对象表示形式
class StringRepresentation:
def __init__(self):
pass
def __str__(self):
return "String Representation of Object used when object used as string represenation"
def __repr__(self):
return "Object Representation"
obj = StringRepresentation()
print(str(obj))```
UnorderedList is printing because this is the way how it __str__ or __repr__ is implemented