讀取文件內容
- 文件路徑的操作需要導入os模塊
- python中文件操作3個步驟:
- 調用open()函數,返回一個File對象。
- 調用File對象的讀寫方法。
- read()方法,將整個文件的內容讀取為一個字符串值。
- readlines()方法,從文件取得一個字符串的列表,列表中的每個字符串就是文本中的一行。注意:除了文件的最后一行,每個字符串值都以一個換行字符\n結束。
- 調用File對象的close()方法。
用shelve模塊保存變量
>>> import shelve
>>> shelfFile = shelve.open('mydata')
>>> cats = ['Zophie','Pooka','Simon']
>>> shelfFile['cats'] = cats
>>> shelFile.close()
在當前目錄下出現三個新的文件:
mydata.bak
mydata.dat
mydata.dir
讀取shelve保持的變量:
>>> shelfFile = shelve.open('mydata')
>>> type(shelfFile)
<class 'shelve.DbfilenameShelf'>
>>> shelfFile['cats']
['Zophie', 'Pooka', 'Simon']
>>> shelfFile.close()
shelf值也有鍵和值類似的列表值,但shelve變量的這些方法返回的不是真正的列表,所以要將他們傳遞給list()函數,取得列表的形式。
>>> shelfFile = shelve.open('mydata')
>>> list(shelfFile.keys())
['cats']
>>> list(shelfFile.values())
[['Zophie', 'Pooka', 'Simon']]
>>> shelfFile.close()
創(chuàng)建文件時,如果要在文本編輯器中讀取他們,純文本非常有用。如果想要保持python程序中的數據,用shelve模塊更為明智。
用pprint.pformat()函數保持變量
如果想要將變量輸出到文本且,格式漂亮。那么可以導入pprint模塊來用。
- pprint.pprint()函數將列表或字典中的內容“漂亮打印”到屏幕。
- pprint.pformat()函數將返回同樣格式的文本字符串,但是不打印它。
文件名可以用變量來控制編號如:
answerKeyFile = open('capitalsquiz_answer%s.txt' % (quizNum + 1), 'w')