首頁 >後端開發 >Python教學 >Python常用檔案讀寫

Python常用檔案讀寫

巴扎黑
巴扎黑原創
2016-12-09 09:56:051031瀏覽

讀取文字檔

input = open('data', 'r')

#第二個參數預設為r

input = open('data')

 

('data', 'rb')

 

讀取固定位元組

file_object = open('abinfile', 'rb')

 

3.寫檔案

( 'data', 'w')

 

寫二進位檔案

output = open('data', 'wb')

 

追加寫檔案

out

 

寫資料

file_object = open('thefile.txt', 'w')

file_object.write(all_the_text)

file_object.close 寫文件

r+具有讀寫屬性,從文件頭開始寫,保留原文件中沒有被覆蓋的內容;

w+具有讀寫屬性,寫的時候如果文件存在,會被清空,從頭開始寫。

 

r 開啟唯讀文件,該文件必須存在。 

r+ 開啟可讀寫的文件,該文件必須存在。 

w 開啟只寫文件,若文件存在則文件長度清除為0,即該文件內容會消失。若文件不存在則建立該文件。 

w+ 開啟可讀寫文件,若文件存在則文件長度清除為零,即該文件內容會消失。若文件不存在則建立該文件。 

a 以附加的方式開啟只寫檔案。若文件不存在,則會建立該文件,如果文件存在,

寫入的資料會被加到文件尾,即文件原先的內容會被保留。 

a+ 以附加方式開啟可讀寫的檔案。若文件不存在,則會建立該文件,如果文件存在,

寫入的資料會被加到文件尾後,即文件原先的內容會被保留。

#!/usr/bin/env python
'''makeTextFile.py -- create text file'''
import os
ls = os.linesep
# get filename
fname = raw_input('filename> ')
while True:
if os.path.exists(fname):
print "ERROR: '%s' already exists" % fname
else:
break
# get file content (text) lines
all = []
print "\nEnter lines ('.' by itself to quit).\n"
# loop until user terminates input
while True:
entry = raw_input('> ')
if entry == '.':
break
else:
all.append(entry)
# write lines to file with proper line-ending
fobj = open(fname, 'w')
fobj.writelines(['%s%s' % (x, ls) for x in all])
fobj.close()
print 'DONE!'
#简单文本读取
f = open('text.txt','r')
for line in f.readlines():
print line.strip()  #默认会读出换行符,需要用strip() 进行处理
#二进制文件复制
import os
f = open('test.jpg','rb')
targetFile='test2.jpg'
if os.path.isfile(targetFile): 
os.remove(targetFile)
#另存为
print open('test2.jpg','wb').write(f.read())

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn