av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

python2.7 - Python 2.7 stdout重定向的疑問

瀏覽:106日期:2022-07-22 11:37:00

問題描述

先上代碼

import sysclass TestWriter(object): def __init__(self, stream=sys.stdout):super(TestWriter, self).__init__()self.stream = stream def write(self, line):self.stream.write(line)tmp = sys.stdoutf = open(’d:stdout.txt’, ’w’)try: sys.stdout = f adpt = TestWriter() //如果這里我把f當(dāng)參數(shù)傳入,則執(zhí)行結(jié)果如預(yù)期。 adpt.write(’asdfwe’) // 預(yù)期字符串寫入文本,單事實上字符串輸出到了屏幕。 print ’this is import from print’ //如預(yù)期的輸入到了文本except Exception, e: sys.stdout = tmp print efinally: sys.stdout = tmp f.close()print ’finish’

問題:就如我注釋里寫的,調(diào)用TestWriter.write()的時候沒有實現(xiàn)sys.stdout的重定向輸出,但之后的print證明了標(biāo)準(zhǔn)輸出已經(jīng)重定向到了文件f對象。斷點跟蹤的時候,self.stream也顯示為f對象求解惑!!!python2.7 - Python 2.7 stdout重定向的疑問

python2.7 - Python 2.7 stdout重定向的疑問

python2.7 - Python 2.7 stdout重定向的疑問

問題解答

回答1:

def __init__(self, stream=sys.stdout)

Python在創(chuàng)建每個函數(shù)時,每個參數(shù)都會被綁定,默認(rèn)值不會隨著值的改變而重新加載

# coding: utf-8D = 2 class Test: def __init__(self, a=D):print aif __name__ == ’__main__’: D = 3 t = Test() print Dinner function: 2outer function: 3

但如果綁定參數(shù)默認(rèn)參數(shù)綁定的是地址,那就不一樣,地址不變,內(nèi)容可以變.

# coding: utf-8D = [3] class Test: def __init__(self, a=D):print 'inner function: ', aif __name__ == ’__main__’: D[0] = 2 t = Test() print 'outer function:', D inner function: [2]outer function: [2]回答2:

In contrast, in Python, execution begins at the top of one file and proceeds in a well-defined order through each statement in the file, ...

http://stackoverflow.com/ques...

python會順序解釋每條語句,所以TestWriter的構(gòu)造器參數(shù)stdout沒有被重定向。

以上都是我猜的

=====================================================================

import sysclass A: def __init__(self, stream=sys.stdout):print(stream)f = open(’test.txt’, ’w’)a = A()sys.stdout = fprint(sys.stdout)

運行結(jié)果python2.7 - Python 2.7 stdout重定向的疑問

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 91精品国产乱码久久久久久 | 久久精品国产成人av | 久久国产免费 | 日韩一区二区三 | 久久免费高清视频 | 一区二区网站 | 成人免费激情视频 | 激情av网| 91在线免费视频观看 | 欧美日韩精品在线观看 | 69精品视频 | 日本免费视频 | 国产超碰人人模人人爽人人添 | 精品久久久久久久久久 | 久久精品99久久久久久 | 欧美一区二 | 中文字幕97 | 青青草原国产 | 欧美xx孕妇| 伊人久久久 | 国产精品伦一区二区三级视频 | 国产精品成人国产乱一区 | 日韩精品第一页 | 国产精品国产三级国产 | 亚洲精品在线免费 | 国产精品久久久久久久久久久久久 | 青青草91 | 欧美一级欧美三级在线观看 | 九久久| 天天cao| 91爱爱网站 | 日韩一区二区免费视频 | av网站在线看 | 日本成人小视频 | 日韩成人中文字幕 | 香蕉视频久久 | 一级片大全 | 精品三级在线观看 | 欧美顶级黄色大片免费 | 色爱综合网 | 一级毛片久久久 |