1. 程式人生 > 其它 >【Python 基礎]】將文字檔案內容讀入到 陣列的例子(改進版) Python基礎 索引頁Python基礎 索引頁

【Python 基礎]】將文字檔案內容讀入到 陣列的例子(改進版) Python基礎 索引頁Python基礎 索引頁

返回: Python基礎 索引頁


假如檔案的內容如下:

###
[Action --1]

RDMA support
IPOIB support
RDSOIB support

###<<<

###
[Action --2]

ORA-07445
pevm_icd_call_common
ORA 7445 [pevm_icd_call_common]
oracle.sysman.oui.patch.PatchException: java.io.FileNotFoundException:
ContentsXML/oui-patch.xml (Permission denied)

opatch logs

###
<<<


想要讀入陣列後,形成如下結構:

['[Action --1]', 0], ['RDMA support', 'IPOIB support', 'RDSOIB support'],
['[Action --2]', 0], ['ORA-07445', 'pevm_icd_call_common', 'ORA 7445 [pevm_icd_call_common]', 'oracle.sysman.oui.patch.PatchException: java.io.FileNotFoundException:', 'ContentsXML/oui-patch.xml (Permission denied)'
, 'opatch logs']


程式程式碼如下:

tmpFactor= []
contentsList = []
actionList = []

myfile = open('AI.txt')
line = myfile.readline()
iti = 0
while line:
    current_line = line.strip()
    if ( current_line == "###" ) :  # read the next line when encounter "###"
        line = myfile.readline()
        current_line 
= line.strip() ## <<<<<<<<<< first line , action plan name tmpFactor.append( current_line ) tmpFactor.append( 0 ) # the counter for later summary ## <<<<<<<<<<< skip to the line next to [action] line = myfile.readline() elif ( current_line == "###<<<" ) : # the current group finished ##print ( "got to the end" ) actionList.append(tmpFactor) actionList.append(contentsList) ##print ( actionList ) ##make search ## go to next item section tmpFactor= [] contentsList = [] line = myfile.readline() ##continue ##break else: # got the real content to the list if ( current_line == '') : iti = 0 ##print ( "null line" ) else : iti = 1 ##print ( "good line,append" + current_line ) contentsList.append( current_line ) # append the real content line = myfile.readline() iti = 2 ## end of else content iti = 3 ## end of while content myfile.close() print ( actionList )


執行結果如下:

[
['[Action --1]', 0], ['RDMA support', 'IPOIB support', 'RDSOIB support'],
['[Action --2]', 0], ['ORA-07445', 'pevm_icd_call_common', 'ORA 7445 [pevm_icd_call_common]', 'oracle.sysman.oui.patch.PatchException: java.io.FileNotFoundException:', 'ContentsXML/oui-patch.xml (Permission denied)', 'opatch logs']
]


返回: Python基礎 索引頁