永发信息网

python stdout 什么用

答案:2  悬赏:10  手机版
解决时间 2021-03-19 00:20
python stdout 什么用
最佳答案
标准输出(sys.stdout)对应的操作就是print(打印)了,标准输入(sys.stdin)则对应input(接收输入)操作,标准错误输出和标准输出类似也是print(打印)。
python最基本的操作 - 打印:
print 1

其效果是把 1 写在console(命令行)里面让你看。
实际上他的操作可以理解为:把console(命令行)作为一个板子,通过sys.stdout = console指定往console板子上写东西(console是默认的,也就是说你不修改要往哪儿写的话,就会默认往这写),在print 1的时候,就是告诉python,我要写1,然后python就会去sys.stdout所指定的板子里,也就是console(命令行)里写上 1。
(标准错误输出也是同样的过程,你会发现当程序出错时,错误信息也会打印在console里面。)

其实只要一个对象具有write方法,就可以被当作“板子”,告诉sys.stdout去哪里写。
说道write方法,第一个想到的可能就是文件操作了。
f=open('log.txt','w')

想上面那样声明一个文件对象 f,此文件对象就拥有了write方法,就可以被用来当作标准输出和保准错误输出的板子。

f=open('log.txt','w')
__console__ = sys.stdout #把默认的“板子” - 命令行做个备份,以便可以改回来

sys.stdout = f

print 1

sys.stdout = __console__
print 2

上面的操作,通过sys.stdout = f 指定打印时的板子改成了 f。所以在使用print的时候,不再是把1打印在命令行里,而是写在了log.txt文件里面。

后面又把板子改成了命令行,此时print 2就又把2打印到命令行了
全部回答
sys.stdout 是标准输出文件。write就是往这个文件写数据。 合起来就是打印数据到标准输出。 对初学者来说,和print功能一样。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
黑龙江省执业药师老考生需要去现场审核吗?
下节这个地址在什么地方,我要处理点事
he.makes.the.bridge.upside.down的汉语意思
医士和医师有什么不一样?
古琴徽位是如何定的
范董线/长深高速公路(路口)怎么去啊,有知道
为夏天的海滩作文300
广州那里批发衣服市场最便宜
玻尿酸隆鼻,是打进血管了吗
长虹LT37810U可以连接wifi吗
浙江师范大学修双学位
很硬的感觉,有点那种肌肉紧绷的感觉,怎么办
众安府佑水香北区南门在哪里啊,我有事要去这
我是机械工程师,哪好找工作啊
手机上说我又20G断网专用累计流量包 是什么
推荐资讯
松下剃须刀和飞利浦剃须刀比较哪个好
福州管辖哪八县
诚志农资公司化肥农药经销处地址在哪,我要去
龙尾地址在哪,我要去那里办事
电影中一个女护士被他爸吓死了,是什么电影来
萧中剑的人物经历
卖手机营业员工资多少
索尼MP3 NW-S745 怎么弄成中文系统? 弄成中
我梦见在车站买票时被小偷A偷了口袋里的东西
苹果7拍照声音怎么开启
支付宝转账转错了钱能拿回来吗
柯南 在古堡找宝藏的是哪集 最后找到的是美景
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?