我有以下python代码片段:
LL=[]
for i in range(3):
LL.append("a"+str(i))
print LL
输出如下:
['a0', 'a1', 'a2']
如何打印(使用print LL
):
[a0, a1, a2]
即。没有引号? 如果我使用以下代码:
print "[",
for i in range (len(LL)-1):
print LL[i] + ", ",
print LL[i+1]+"]"
这会打印[a0, a1, a2]
答案 0 :(得分:12)
答案 1 :(得分:-5)
这是一个对我有用的实用功能:
def printList(L):
# print list of objects using string representation
if (len(L) == 0):
print "[]"
return
s = "["
for i in range (len(L)-1):
s += str(L[i]) + ", "
s += str(L[i+1]) + "]"
print s
这适用于任何对象的列表,例如,如果我们有一个如下所示的点类:
class Point:
def __init__(self, x_crd, y_crd):
self.x = x_crd
self.y = y_crd
def __str__(self):
return "(" + str(self.x) + "," + str(self.y) + ")"
并有一个Point对象列表:
L = []
for i in range(5):
L.append(Point(i,i))
printList(L)
输出如下:
[(0,0), (1,1), (2,2), (3,3), (4,4)]
而且,它符合我的目的。 感谢。