python如何使用print语句

Python中print语句

1.逗号分隔符

在Python中print语句可根据sys.stdout中包含的文件生成输出,它接受一个逗号分隔的对象表,如下实例:

x = 1
y = 2
z = 3
print("the values are", x, y, z)
#打印结果为 the values are 1 2 3

在上述实例中,对于每个对象,将调用str()函数来生成输出字符串。这些输出字符串会连接在一起,彼此之间用一个空格分开,从而得到最终的输出字符串。输出通过一个换行符终止。

2.格式化输出

要生成格式化输出,可以使用字符串格式运算符 % 或 .format()方法。

x = 1
y = 2
z = 3
print("the values are %d %7.5f %s" % (x, y, z))

3.更改print语句的目标

更改print语句的目标,也就是重定向。方法是添加特殊的 >>file修饰符和一个逗号,其中file是一个允许写入的文件对象

f = open("file_path", 'w')
print >>f, "hello world"  #这是python2中的用法,在python3的具体方法请看下文
...
f.close()

4.print()函数

Python3中最重要的更改之一就是将print转变为函数,在python2中他是一个关键字

其用法与Python2中的大致相同,但是一些细枝末节还是有区别的,下文就简述这三种。

print("the values are",x, y, z, end = '') #禁止换行符
print("the values are",x, y, z, file = f) #重定向到文件对象f
print("the values are",x, y, z, sep = ',') #在值之间添加逗号

5.文本输出中的变量插入

生成输出时一个常见的问题是,生成其中包含了嵌入式变量替换的大型文本片段。比如shell脚本就支持 $name这样的变量插入。在python中无法实现这一功能。但是可以通过将格式化I/O与引导的字符串来模仿这种行为。

form = """
Dear %(name)s,
Please send back my %(item)s or pay me $%(amount)0.2f.

                            Sincerely yours,

                            Joe Python User
"""
print(form % {'name': 'Mr.Bush',
              'item': 'blender',
              'amount': 50.00,
    })

这段代码输出

Dear Mr.Bush,
Please send back my blender or pay me $50.00.

                            Sincerely yours,

                            Joe Python User

6.生成输出

直接处理文件是我们最熟悉的I/O模型。生成器函数也可以用于一个数据片段序列的形式输出I/O流,为此只需要使用yield语句,就像使用write()或print()语句一样,这样做的好处就是在处理某一段非常庞大的数据时,就不需要将所有的内容都读到内存中,可以显著减少内存的使用。

来源:PY学习网:原文地址:https://www.py.cn/article.html