python 讀寫txt檔案 json檔案的實作方法

WBOY
發布: 2016-12-05 13:27:15
原創
1614 人瀏覽過

首先第一步,開啟文件,有兩個函數可供選擇:open() 和  file()

①. f = open('file.txt',‘w')
   ...
 file.close()  

 ②. f = file('file.json','r')
   ...

file.close()#記得開啟檔案時最後不要忘記關閉!

open() 和 file() 都是Python的內建函數,傳回一個檔案對象,具有相同的功能,可以任意替換。使用語法為:

f = open(fileName, access_mode='r', buffering=-1)

第1個參數是檔名, 2,3參數有預設值,參數2 決定了是以讀取的方式‘r' ?還是寫的方式‘w' ?抑或別的方式開啟文件。

打開的方式有:

r —— 讀 ; w —— 寫 ; a —— 追加,從EOF開始寫,即在文件末尾寫

r+  w+  a+  ——  都是以讀寫方式開啟

rb —— 二進位 讀 ; wb —— 二進位 寫 ;rb+  wb+  ab+ —— 二進位讀寫

範例:

fp = open('C:\Users\MPC\Desktop\说明.txt')# 默认以读的方式打开

fp = open('test.txt','w')# 写方式打开

fp = open('data.json','a')#追加方式打开
登入後複製

第二步,對文件進行操作

當得到文件物件這個句柄以後(如範例中的fp),就可對文件進行操作了。

文件物件的內建操作方法有:輸入,輸出,文件內移動,以及雜項操作

1.  輸入 

函數:  read(),readline(),readlines()

將文件中的內容讀入 到 一個字串變數/列表 中

read() :  讀取整個檔案到字串變數中

範例:

fp = open('C:\Users\MPC\Desktop\说明.txt')

all_file = fp.read()
登入後複製

read()有一個可選的size參數,預設為-1,表示檔案將會被讀到末尾(EOF)

readline() :讀取開啟檔案中的一行,然後傳回整行包含行結束符號到 字串變數中

readline()也有一個可選的參數size,預設-1,表示讀至行結束符號停止

readlines() : 讀取整個文件,回傳一個 字串列表 ,列表中的每個元素都是一個字串,代表一行

範例:

fp = open('C:\Users\MPC\Desktop\说明.txt')

lines = fp.readlines()

for line in lines:

...

fp.close()
登入後複製

或 第2 3 行 簡寫為:for line in fp.readlines():

在python2.3之後由於迭代器和文件迭代(即文件物件成為了他們自己的迭代器)的引入,

上例有一種更有效率的實作方式:

fp = open('C:\Users\MPC\Desktop\说明.txt')

for line in fp:

...

fp.close()
登入後複製

推薦使用這種方法!

2.  輸出

函數:write() , writelines()

將字串/列表 輸出到檔案中

write() : 將字串輸出到檔案

>>>f= open('test.txt','w')

>>>f.write('Helloworld!')

>>>f.close()

>>>f= open('test1.txt','w')

>>>f.write('Welcome\nto\n China!')

>>>f.close()

>>>f= open('test1.txt','w')

>>>f.write('Welcome\nto\n China!')

>>>f.close()
登入後複製

writelines():  將字串清單 寫入 文件,注意行結束符號並不會自動被加入,如果需要,必須手動在每行的結尾加入行結束符號。

什麼意思呢?  看下例:

>>>s= ['你好','伙计']

>>>f= open('test.txt','w')

>>>f.writelines(s)

>>>f.close()

>>>s= ['你好\n','伙计']

>>>f= open('test.txt','w')

>>>f.writelines(s)

>>>f.close()

>>>f = open(r'I:\python\test.txt','w')

>>>f.write('First line\n')

>>>f.write('Second line\n')

>>>f.write('Third line\n')

>>>f.close()

>>>lines = list(open(r'I:\python\test.txt'))

>>>lines

['Firstline\n', 'Second line\n', 'Third line\n']

>>>first,second,third = open(r'I:\python\test.txt')

>>>first

'Firstline\n'

>>>second

'Secondline\n'

>>>third

'Thirdline\n'
登入後複製

3. 文件內移動

函數: seek() tell()

seek() :移動檔案讀取指標到製定的位置

tell():   返回檔案讀取指標的位置

seek()的三種模式:

(1)f.seek(p,0)  移動當檔案第p個位元組處,絕對位置

(2)f.seek(p,1)  移動到相對於目前位置之後的p個位元組

(3)f.seek(p,2)  移到相對文章尾之後的p個位元組

以上就是小編為大家帶來的python 讀寫txt檔案 json檔案的實作方法全部內容了,希望大家多多支持腳本之家~

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!