直接把列表儲存在檔案中,可讀性不好。
修改**:把資料輸出到乙個磁碟檔案而不是顯示在螢幕上(稱為標準輸出)。然後就可以採用一種更可用的格式儲存資料。
標準輸出(standard output):這是使用「print()」 bif**寫資料的預設位置,這通常是螢幕。在python中,標準輸出是指「sys.stdout」,可以從標準庫中的「sys」模組匯入。
nester.py
import sys
def print_lol(the_list,indent=false,level=0,fn=sys.stdout):
for element in the_list:
if isinstance(element ,list):
print_lol(element,indent,level+1,fn)
else:
if indent:
for tap_stop in range(level):
print("\t",end='',file = fn)
print(element,file = fn)
import nester
import os
os.chdir("d:\\program files\\python\\test")
try:
data = open('scatch.txt')
man =
woman =
for each_line in data:
try:
(role,line_spoken) = each_line.split(':',1)
line_spoken = line_spoken.strip()
if role == 'man':
elif role == 'woman':
except valueerror:
pass
data.close()
except ioerror:
print("the file is missing!")
try:
out_man = open("man_data.txt","w+")
out_woman = open("woman_data.txt","w+")
nester.print_lol(man,true,0,out_man)
nester.print_lol(woman,true,0,out_woman)
out_man.seek(0)
out_woman.seek(0)
out_man.read()
out_woman.read()
except ioerror:
print("file error")
finally:
out_man.close()
out_woman.close()
python標準輸入輸出
sys模組 usr bin python2.6 import sysfor line in sys.stdin print line,先寫乙個指令碼,顯示行號和內容,之後引用它 usr bin env python import sys counter 1 while true line sys.s...
Python標準輸入輸出
以乙個從控制台接收使用者輸入的名字字串為例,排除空格和單純的換行符 import sys while true sys.stdout.write 請輸入你的名字 name sys.stdin.readline if not name.strip sys.stdout.write 輸入的名字為空 n ...
標準輸入,標準輸出,標準錯誤輸出緩衝問題
基於流的操作最終會呼叫read或者write函式進行i o操作。為了使程式的執行效率最高,流物件通常會提供緩衝區,以減少呼叫系統i o庫函式的次數。基於流的i o提供以下3種緩衝 以上3種緩衝區分別定義為3個巨集,其定義如表21 1所示。表21 1 緩衝區型別的巨集定義 緩衝區型別 定 義 的 巨集...