我无法找到正确的输出。让我们说我有两个列表,列表A和列表B.
list A = [1,2,3]
list B = [2,3,4]
我想打印出如下声明..
Solution A : 1 2 3
Solution B : 2 3 4
到目前为止,我所做的是......
A = config.mList
B = config.sList
return 'Solution A: %s \nSolution B: %s' %(A, B)
这只是打印出
Solution A: ['17', '4', '8', '11']
Solution B: ['9', '18', '13']
答案 0 :(得分:3)
在Python 2.x中:
print 'Solution A:', ' '.join(A)
在Python 3.x中:
print('Solution A:', *A)
请注意,Python 3.x中的print
函数会自动调用它提供的对象上的str
。因此' '.join
要求对象已经是字符串,所以要确保使用:
print ' '.join([str(el) for el in A])
或者:
print ' '.join(map(str, A))
答案 1 :(得分:2)
您可以使用str.join
和str.format
:
>>> A = ['1','2','3']
>>> B = ['2','3','4']
>>> print "Solution A : {}\nSolution B : {}".format(" ".join(A), " ".join(B))
Solution A : 1 2 3
Solution B : 2 3 4
>>>
但请注意,在使用str.join
之前,列表中的项必须为字符串。在您的示例中,您提供了整数列表。所以,如果你有这些,你可以这样做:
>>> A = [1,2,3]
>>> B = [2,3,4]
>>> print "Solution A : {}\nSolution B : {}".format(" ".join(map(str, A)), " ".join(map(str, B)))
Solution A : 1 2 3
Solution B : 2 3 4
>>>
以下是map
的参考资料。
答案 2 :(得分:0)
使用join函数将列表转换为字符串,然后对其进行格式化。
' '.join(A) # "1 2 3"
答案 3 :(得分:0)
你可以设置一个小函数来将项目格式化为文本字符串,在格式化时你可以避免重复:
def textlist(mylist):
return ' '.join(map(str, mylist))
print "Solution A: {0} \nSolution B: {1}".format(textlist(A), textlist(B))