gpt4 book ai didi

python - sys.stdout.write 和 print 的区别?

转载 作者:IT老高 更新时间:2023-10-28 12:06:31 28 4
gpt4 key购买 nike

是否存在 sys.stdout.write() 优于 print 的情况?

(示例:更好的性能;更有意义的代码)

最佳答案

print 只是一个瘦包装器,用于格式化输入(可修改,但默认情况下,在 args 和换行符之间有一个空格)并调用给定对象的 write 函数。默认情况下,此对象是 sys.stdout,但您可以使用“chevron”形式传递文件。例如:

print >> open('file.txt', 'w'), 'Hello', 'World', 2+3

见:https://docs.python.org/2/reference/simple_stmts.html?highlight=print#the-print-statement


在 Python 3.x 中,print 变成了一个函数,但由于 file参数。

print('Hello', 'World', 2+3, file=open('file.txt', 'w'))

https://docs.python.org/3/library/functions.html#print


在 Python 2.6+ 中,print 仍然是一个语句,但它可以作为一个函数使用

from __future__ import print_function

更新:Bakuriu 评论指出 print 函数和 print 语句之间(更一般地说是函数和语句之间)存在细微差别。

如果在评估参数时出错:

print "something", 1/0, "other" #prints only something because 1/0 raise an Exception

print("something", 1/0, "other") #doesn't print anything. The function is not called

关于python - sys.stdout.write 和 print 的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3263672/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com