我有一個腳本接受作爲參數的文件名,而不是打開它並寫入一些東西。如果沒有提供文件名回退到標準輸出
我使用with
聲明:
with open(file_name, 'w') as out_file:
...
out_file.write(...)
現在,如果我想如果沒有提供file_name
寫sys.stdout
?
我是否需要將一個函數中的所有動作都包裝起來,並在之前放置一個條件?
if file_name is None:
do_everything(sys.stdout)
else:
with open(file_name, 'w') as out_file:
do_everything(out_file)
這似乎很多pythonic :)需要一些'import'我猜 – neurino 2012-03-23 09:29:19
是的,對不起。只需以我喜歡的方式添加'import'語句。隨意使用它,不用'as'或'from'。 – glglgl 2012-03-23 09:37:52