如何使Python中的print()语句运行结果不换行
作者:宁萌Julie
内容概要:print()
是一个常用函数。那么,您是否注意过,print() 会在显示当前语句后换行。如果遇到需要连续显示、不换行的情况,比如在循环中使用 print(),应该怎么办呢?本文介绍了这个问题的解决方法。
在做猜字谜游戏的程序设计时,需要把可选的字母显示出来。字母集是以字典的形式({字母: 个数})存储的。比如:{‘g’: 1,‘o’: 2,‘d’: 1},显示格式为:g o o d。
我们首先会想到使用循环。对于字母集中的每个 {字母: 个数} 对,把字母打印个数遍即可。
如下代码所示:
letters={'g': 1,'o': 2,'d': 1} for letter in letters.keys(): for i in range(letters[letter]): print(letter)
运行结果为:
g
o
o
d
从结果可以看出,print()
函数自带换行符,这样一个字母就占了一行,而设想的是字母集的所有字母显示为一行(g o o d)。
问题是,怎么才能让 print() 函数不换行呢?
解决方法:print()
函数有一个内置参数 end
,使用 print() 时默认为 end=‘\n’。如果想要不换行显示,只要根据需要,把 end 设置为‘’(空字符)或‘ ’(空格符)即可。
下面我们结合例子来看看,仍然显示前面例子中的字符集: letters={‘g’: 1,‘o’: 2,‘d’: 1}
。
1.print() 函数默认设置为:end=’\n’
for letter in letters.keys(): for i in range(letters[letter]): print(letter,end='\n')
运行结果为:
g
o
o
d
可以看到,print(letter,end='\n')
和print(letter)
的结果相同。
2.end=’’(空字符),不换行,字符连续显示
for letter in letters.keys(): for i in range(letters[letter]): print(letter,end='')
运行结果为:
good
3.end=’ '(空格符),不换行,字符间有空格
for letter in letters.keys(): for i in range(letters[letter]): print(letter,end=' ')
运行结果为:
g o o d
这个结果正是本文开头设想的显示效果。
此外,end 也可以设置为其它的分隔符,比如end=’,’
,
如下代码所示:
for letter in letters.keys(): for i in range(letters[letter]): print(letter,end=',')
运行结果为:
g,o,o,d,
到此这篇关于如何使Python中的print()显示当前语句后不换行的文章就介绍到这了,更多相关print()语句显示内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!