在python中不用空格打印3

我是Python的新手,我想知道如何打印多个值,而没有额外的空间之间添加。 我想要输出ab而不是ab而不必print两次:

 print("a", end="") print("b") 

另外,我有以下代码:

 a = 42 b = 84 

我想打印他们的值为a = 42, b = 84 ,但如果我这样做

 print("a = ", a, ", ", b = ", b) 

额外的空间被添加(它输出a = 42 , b = 84

而Java风格,

 print("a = " + a + ", b = " + b) 

引发TypeError

您可以使用sep参数来摆脱空格:

 >>> print("a","b","c") abc >>> print("a","b","c",sep="") abc 

我不知道你的意思是什么“Java风格”; 在Python中,你不能以这种方式将string添加到(说)整数,但如果ab是string,它将起作用。 当然,你还有其他的select:

 >>> print("a = ", a, ", b = ", b, sep="") a = 2, b = 3 >>> print("a = " + str(a) + ", b = " + str(b)) a = 2, b = 3 >>> print("a = {}, b = {}".format(a,b)) a = 2, b = 3 

甚至(虽然我不推荐这一般,它有时派上用场,否则没有任何意义):

 >>> print("a = {a}, b = {b}".format(**locals())) a = 2, b = 3 >>> print("b = {b}, a = {a}".format(**locals())) b = 3, a = 2 

在这个页面上 ,答案是打印普通文本,最后使用sep=""

所以命令

 print("Hole", hole, "Par", par, sep="") 

会给

 "Hole1Par4" 

假设hole==1par==4

你也可以使用

 print("%d%d" %(a,b)) 

以格式化string的forms打印a和b不能被空格分隔。 这与c中的相似。