博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python进阶之路 3.1 神奇的print函数
阅读量:6418 次
发布时间:2019-06-23

本文共 1960 字,大约阅读时间需要 6 分钟。

3.1 神奇的print函数

相信大家对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

你可能感兴趣的文章
linux系统安装完后的常见工作
查看>>
在Linux服务器、客户端中构建密钥对验证进行远程连接
查看>>
揪出MySQL磁盘消耗迅猛的真凶
查看>>
和“C”的再遇
查看>>
一键安装kubernetes 1.13.0 集群
查看>>
RabbitMq的集群搭建
查看>>
spring boot + mybatis 同时访问多数据源
查看>>
URL中汉字转码
查看>>
[转]go正则实例
查看>>
Selector中关于顺序的注意事项
查看>>
小黑小波比.清空<div>标签内容
查看>>
Java中的ExceptionInInitializerError异常及解决方法
查看>>
Spring 注入bean时的初始化和销毁操作
查看>>
java线程同步原理(lock,synchronized)
查看>>
MyEclipse中使用Hql编辑器找不到Hibernate.cfg.xml文件解决方法
查看>>
yRadio以及其它
查看>>
第四节 对象和类
查看>>
闪迪(SanDisk)U盘防伪查询(官方网站)
查看>>
Android onMeasure方法介绍
查看>>
无锁数据结构
查看>>