用Python中的逗号替换变量之间的空格

时间:2013-11-10 00:41:09

标签: python

我想删除每个打印变量之间的空格,并用逗号替换它们。

在当前状态下,将打印字符串,然后打印每个具有分隔空格的空格。

例如,如果a = 1且每个变量增加1,则会打印出来:1 2 3 4 5 6 7 8 9.我想要打印:1,2,3,4,5,6 ,7,8,9-。

我该怎么做?

感谢。

以下是我要更改的代码:

print("Test: ", a,b,c,d,e,f,g,h,i)

3 个答案:

答案 0 :(得分:2)

使用str.join()

print('Test:', ','.join(map(str, [a, b, c, d, e, f, g, h, i])))

map()调用确保所有值都是字符串。

演示:

>>> a, b, c, d, e, f, g, h, i = range(1, 10)
>>> print('Test:', ','.join(map(str, [a, b, c, d, e, f, g, h, i])))
Test: 1,2,3,4,5,6,7,8,9

答案 1 :(得分:1)

@ Martijn的答案是更好的方法,但只是让你知道这是可能的,函数print采用一个关键字参数sep,它指定在两个参数之间打印的内容。功能

>>> print('Test:', a,b,c,d,e,f,g,h,i, sep=',')
Test:, 1,2,3,4,5,6,7,8,9

正如您所看到的,它还会在“Test:”之后打印一个逗号,这可能不是您想要的。

答案 2 :(得分:0)

加入iterables是Python新手学习最令人沮丧的事情之一。例如,列表没有连接方法。

理由是这是一个字符串方法。这是有道理的,因为它返回一个字符串。

但是,一个内置的join()函数接受一个iterable和一个用来连接其中的项的字符串会很有意义并得到我的支持。

然而,Python的优势在于,这些基本但反直觉的操作很少。