我有一个Python中的列表 如。

names = ["Sam", "Peter", "James", "Julian", "Ann"]

我想打印的数组在单行没有正常的" []

names = ["Sam", "Peter", "James", "Julian", "Ann"]
print (names)

将给出输出为;

["Sam", "Peter", "James", "Julian", "Ann"]

这不是我想要的格式,而是这样的;

Sam, Peter, James, Julian, Ann

注意:必须为单行。


当前回答

有两个答案,第一是使用“sep”设置

>>> print(*names, sep = ', ')

另一个在下面

>>> print(', '.join(names))

其他回答

print(', '.join(names))

这个,就像它听起来一样,只是取列表中的所有元素并用','连接它们。

这就是你需要的

", ".join(names)

打印(*名称)

这将在python3中工作 如果你想打印出来,以空格分隔。 如果你需要逗号或其他中间的东西,请使用.join()解决方案

对于整数类型的数组,我们需要先将其更改为字符串类型,然后使用连接函数来获得不带括号的干净输出。

    arr = [1, 2, 3, 4, 5]    
    print(', '.join(map(str, arr)))

输出- 1,2,3,4,5

对于字符串类型的数组,我们需要直接使用连接函数来获得不带括号的干净输出。

    arr = ["Ram", "Mohan", "Shyam", "Dilip", "Sohan"]
    print(', '.join(arr)

输出- Ram, Mohan, Shyam, Dilip, Sohan

下面的函数将接受一个列表并返回列表项的字符串。 然后可以将其用于日志记录或打印目的。

def listToString(inList):
    outString = ''
    if len(inList)==1:
        outString = outString+str(inList[0])
    if len(inList)>1:
        outString = outString+str(inList[0])
        for items in inList[1:]:
            outString = outString+', '+str(items)
    return outString