- # 打開方式
r:以只讀方式打開文件
rb:以二進制格式打開文件用於只讀
r+:以讀寫方式打開
rb+:以二進制方式打開並讀寫文件
w:以只寫方式打開文件,如果文件已存在則會被覆蓋,不存在則會新建一個文件
w+:以讀寫方式打開文件,如果文件已存在則會被覆蓋,不存在則會新建一個文件
wb+:以二進制方式打開並讀寫文件,如果文件已存在則會被覆蓋,不存在則會新建一個文件
a:打開文件向文本追加新內容,如果文件已存在則會被覆蓋,不存在則會新建一個文件
a+:以二進制方式打開文件向文本追加新內容,如果文件已存在則會被覆蓋,不存在則會新建一個文件
- # file 對象方法
file.read([size]):size 未指定則返回整個文件,如果文件大小 >2 倍內存則有問題,f.read()讀到文件尾時返回""(空字串)。
file.readline():返回一行。
file.readlines([size]) :返回包含size行的列表, size 未指定則返回全部行。
for line in f: print line :通過迭代器訪問。
f.write("hello\n"):如果要寫入字符串以外的數據,先將他轉換爲字符串。
f.tell():返回一個整數,表示當前文件指針的位置(就是到文件頭的比特數)。
f.seek(偏移量,[起始位置]):用來移動文件指針。
偏移量: 單位爲比特,可正可負
起始位置: 0 - 文件頭, 默認值; 1 - 當前位置; 2 - 文件尾
f.close() 關閉文件
- # 實列
# 文件讀
def demo1():
# r: 以只讀方式打開文件
with open('test','r',encoding='utf-8',errors='ignore')as f: # errors='ignore' 遇見錯誤忽視 encoding='utf-8': 指定讀取的編碼爲utf-8
print(f.read())
# 讀取二進制文件, 比如視頻和圖片
def demo2():
with open('test', 'rb')as f:
f.read()
# 寫文件
def demo3():
with open('test', 'w',encoding='utf-8')as f:
f.write('Hello, world!')