在我学习了如何在Python 3.0 web脚本中阅读 unicode文件之后,现在是时候让我学习使用print()unicode了.
我搜索了编写unicode,例如这个问题解释了你不能将unicode字符写入非unicode控制台.但是,就我而言,输出是给Apache的,我相信它能够处理unicode文本.但是,出于某种原因,stdout我的网络脚本是在ascii.
显然,如果我打开一个文件写自己,我会做类似的事情
open(filename, 'w', encoding='utf8')
Run Code Online (Sandbox Code Playgroud)
但由于我得到了一个开放的流,我使用了
sys.stdout.buffer.write(mytext.encode('utf-8'))
Run Code Online (Sandbox Code Playgroud)
一切似乎都有效.这是否违反某些良好行为规则或有任何意外后果?