在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添加到(说)整数,但如果a
和b
是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==1
和par==4
。
你也可以使用
print("%d%d" %(a,b))
以格式化string的forms打印a和b不能被空格分隔。 这与c中的相似。