本文共 1960 字,大约阅读时间需要 6 分钟。
相信大家对print函数一定不陌生,因为在前面的章节,几乎每个例子都使用了print函数,这个函数的功能就是在控制台输出文本。不过print在输出文本时可以进行一些设置,以及输出多参数字符串。
如果为print函数传入多个参数值,那么print函数会将所有的参数值首尾相接输出。
print("a","b","c","d","e")
a b c d e
可以看到,上面这行代码输出了a到e,共5个字母。在Python控制台中输出了"a b c d e"。很明显是将这5个字符首尾相接输出了。不过这些字母之间用空格分隔,这是print函数默认的分隔符,用于分隔输出的多个参数值,这个默认设置是非常有用的。例如,执行下面的代码,会在等号(=)后面加一个空格。
print("name =","Bill")print("age =",30)
name = Billage = 30
其中等号(=)前面的空格是第1个参数值包含的。
print函数会为除了第1个参数值以外的其他参数值前面添加一个空格,这样做,在需要用空格分隔的场景下,就不需要在每个参数值前面添加空格了。
不过这种默认设置有利有弊,在不需要用空格分隔时,print函数仍然会添加空格。例如,要输出字符串"Apple,Orange,Banana"。其中Apple、Orange和Banana之间用逗号(,)分隔,逗号(,)与其英文单词之间没有空格。如果按照前面的做法,会有如下的代码输出这行字符串。
print("Apple",",", "Orange",",","Banana")
Apple , Orange , Banana
很明显,逗号(,)前后都有空格。当然,可以将逗号(,)与前面的英文单词合并,但逗号(,)与后面的英文单词之间仍然会有空格。
解决这个问题的方法很多,例如可以用传统的字符串相加的方式输出字符串"Apple,Orange,Banana"。
print("Apple" + "," + "Orange" + "," + "Banana")
以上这个方法还是显得有点杂乱,看得眼花缭乱的。那么下面我们在用一种特有的方法解决这个问题。在print函数最后添加sep=","。
print("Apple","Orange","Banana" sep = ",")
上面这个方法就显得很整齐,观赏性更高,更容易让人理解。
print函数输出字符串时,默认会在字符串结尾添加换行符(\n),这样每次调用print函数输出字符串,都会另起一行。不过有时希望调用多次print函数都在同一行输出,这时可以在print函数最后加上end = " ",让最后一个输出字符串结尾符变成空格。
print("a",end = "")print("b",end = "")print("c",end = " ")
ab c
[例 3.1] 本例演示了print函数输出参数值,修改默认多参数值分隔符,以及修改输出字符串结尾字符的方法。
print("name =", "Bill")# 输出用空格分隔的多个参数值print("age = ", 30)# 输出用空格分隔的多个参数值print("Apple" + "," + "Orange" + "," + "Banana")# 使用加号(+)链接字符串print("Apple", "Orange", "Banana", sep=",")# 使用sep修改多参数分隔符为逗号(,),然后输出多参数值print("Can", "you", "tell", "me", "how", "to", "get", "to", "the", "nearest", "tube", "station", sep="&")# 使用sep修改多参数分隔符为"&",然后输出多参数值print("Hello", end=" ")print("World")# 修改输出字符串结尾符为空格,这样下次调用print函数,就会从同一行输出内容print("a", end="")print("b", end="")print("c", end="")# 修改输出字符串结尾符为长度为0的字符串,这样下次调用print函数,输出的内容不仅会在同一行,而且会首尾相接
name = Billage = 30Apple,Orange,BananaApple,Orange,BananaCan&you&tell&me&how&to&get&to&the&nearest&tube&stationHello Worldabc
转载于:https://blog.51cto.com/14349850/2398485