1.5 print()函数的两个“助手”——sep与end

如果需要print()函数一次输出多个数据,数据之间应该用“, ”隔开,而在输出结果中各个数据会默认用空格隔开。例如下面的代码:

>>> print(1, 2, 3, 4)
1 2 3 4

如果我们想让输出结果用其他的符号连接,而不仅仅是空格,办法也很简单,只需要在print括号内加上“sep='x'”(x代表连接符号,可以将其换为其他符号)就可以了。例如下面的代码:

>>> print(1, 2, 3, 4, sep='x')
1x2x3x4
>>> print(1, 2, 3, 4, sep='—')
1—2—3—4
>>> print(1, 2, 3, 4, sep='@')
1@2@3@4

接着想一想,如果我们想在结果中去掉空格该怎样操作?没错,在sep语句中的单引号内不放内容就可以了。例如,下面的代码输出的结果就是没有空格的连续数字。

>>> print(1, 2, 3, 4, sep='')
1234

下面我们试试多个print()函数同时运行是什么样子的。

print(1, 2, 3, 4)
print(5, 6, 7, 8)
print(0, 0, 0, 0)

输出结果为:

1 2 3 4
5 6 7 8
0 0 0 0

通过输出结果我们可以看到,在每行print()函数运行之后,都会自动换行。如果我们想避免这种换行,就需要在print()函数的括号中加上这个语句end='',与前面的数据用逗号隔开。

print(1, 2, 3, 4, end='')
print(5, 6, 7, 8, end='')
print(0, 0, 0, 0, end='')

输出结果为:

1 2 3 45 6 7 80 0 0 0

这样,3行程序的输出结果都在同一行了,只是空格分布不均匀,不如用老办法将所有空格去掉,执行下面的代码猜一猜会输出什么结果。

print(1, 2, 3, 4, sep='', end='')
print(5, 6, 7, 8, sep='', end='')
print(0, 0, 0, 0, sep='', end='')

鹦鹉告诉派森,print()函数还有很多更高级的功能,如字符串格式化、不同进制的数字输出等,这些内容它后续都会教给派森。