這章以sketch.txt爲示例,其中sketch.txt在first head Python 的官網上可以下載,見:http://python.itcarlow.ie/resources.html
利用os.chdir函數可以更改os所在的當前路徑,查看用方法os.getcwd()函數。
書裏實現的功能爲把":"改爲"said:",其中所用到的函數爲split().兩個可選參數,一個決定根據什麼分解,另外一個是這個用來分解的符號使用幾次。
最初的代碼如下:
data = open('sketch.txt') for each_line in data: (role,role_spoken) = each_line.split(':',1) print role +" said: "+role_spoken
使用兩個可選參數,可以避免如一句話如果有兩個冒號出現的錯誤,但是如果某一行沒有冒號,則這個代碼執行起來又會出錯。和很多程序語言一樣,Python也有處理異常的機制。這樣的機制和java類似。try/except機制。
以此爲例:
在txt的文件中,有幾行代碼是沒有':'的。這樣針對split()方法調用的時候一定會出錯,這樣,如果減少複雜度,那麼我們可以針對這個異常做出處理:
try: #你的代碼(可能導致一個運行時錯誤) except: #錯誤恢復代碼
針對以上的程序,那麼這個程序可改善爲:
data = open('sketch.txt') for each_line in data: try: (role,role_spoken) = each_line.split(':',1) print role +" said: "+role_spoken except: pass