Python: IO操作(檔案操作)
讀檔案
使用python內建的函式open()可以開啟一個檔案(類似C語言):
f = open('file.txt', 'r')
f.read()
f.close()
檔案讀寫時可能都會出錯,產生IoError,一旦出錯f.close()就不能用,所以我們可以使用try…finally
try:
f = open('file.txt', 'r')
f.read()
finally:
if f:
f.close()
with方法
with open('xxx.txt', 'r') as f:
print(f.read ())
# 使用with語句不用呼叫close()
呼叫read()會一次性讀取檔案的全部內容,為了保險起見,可反覆呼叫read(size)方法,每次最多讀取size個位元組,另外,呼叫readline()可以每次讀取一行內容,呼叫readlines()一次性讀取所有內容並返回list
如果檔案很小,read()方法最方便;如果不能確定檔案的大小,可反覆呼叫read(size);如果是讀取配置檔案,那麼readlines()最方便
for line in f.readlines():
print(line.spilt()) # 把末尾的'\n'刪掉
要讀取非UTF-8編碼的文字檔案,需要給open()函式傳入enconding引數,如:
f = open('gbk_file', 'r', enconding='gbk')
f.read()
遇到編碼不規範的的檔案,你可能遇到++UnicodeDecodeError++,因為在文字中可能夾雜了一些非法編碼的字元。遇到這種情況++open()++\函式還要傳入一個++errors++引數,表示遇到編碼錯誤後怎麼處理,最簡單的方法就是忽略
f = open('code_error', 'r', encoding='gbk', errors='ignore')
寫檔案
讀檔案和寫檔案是一樣的,唯一的區別就是open()行數所傳的識別符號,’w’或’wb’表示寫文字檔案或者二進位制檔案
f = open('test.txt', 'w')
f.write('Hello, python')
f.close()
你可以呼叫write()函式一直寫檔案,但必須使用f.close()函式關閉檔案。當我們寫檔案時,作業系統不會立刻把資料寫入磁碟,而是放到記憶體快取起來,空閒的時候再寫。忘記呼叫close()可能會使後面的資料丟失,所以還是用with比較保險
with open('test.txt', 'w') as f:
f.write('hello, python')
要給檔案寫入指定編碼的資料,可以給write()函式傳入特定的encoding引數
總結:
- 不管是讀檔案還是寫檔案,操作完成後都要呼叫close()來關閉檔案
- 但是呼叫with… as就可以省去close()了
- 可以指定讀取和寫入檔案編碼方式,就是在對用函式中加入encoding=’xxx’
- 讀取編碼不規範的文字,可以忽略,在read()函式中加入errors=’ignore’
相關推薦
Python: IO操作(檔案操作)
讀檔案 使用python內建的函式open()可以開啟一個檔案(類似C語言): f = open('file.txt', 'r') f.read() f.close() 檔案讀寫
Python I/O 檔案操作Demo
import os # __file__ 表示當前檔案路徑 print(__file__) # os.getcwd() 表示當前的工作目錄 print(os.getcwd()) #桌面路徑 #1. 在當前檔案目錄下新建資料夾 pyTest,用__file__絕對路徑也可以 if not
python:模組(檔案操作)
1.模組 1.1模組的概念 模組是python程式架構的一個核心概念 每一個以副檔名 py 結尾的python原始碼檔案都是一個模組 模組名 同樣也是一個識別符號,需要符合識別符號的命名規則 在模組中定義的全域性變數,函式,類都是提供給外界直接使用的工具 模組
python基礎四(檔案操作)
1.檔案操作的基本流程 1.1 檔案操作的基本流程 1 # 絕對路徑 2 # r"d:/葫蘆娃.txt 前面的r 為轉義. linux平臺和windows的分隔符不同 3 f = open(r"d:/葫蘆娃.txt",encoding="gbk") # 開啟檔案,得到檔案控制代碼 4 c
python基礎之檔案操作和簡單的類
檔案操作 #檔案刪除 import os path=".\\data\\" for s in os.listdir(path): filename=path+s print(filename) # os.remove("test.txt") #檔案開啟 f=open('test.
python 歷險記(三)— python 的常用檔案操作
目錄 前言 檔案 什麼是檔案? 如何在 python 中開啟檔案? python 檔案物件有哪些屬性? 如何讀檔案? read() readline() 如何寫檔案? 如何操作檔案和目錄?
python學習日記(檔案操作)
檔案操作概述 計算機系統分為:作業系統,計算機硬體,應用程式。 我們用python或其他語言編寫的應用程式若想要把資料永久儲存下來,必須要保存於硬碟中,這就涉及到應用程式要操作硬體,眾所周知,應用程式是無法直接操作硬體的,這就用到了作業系統。作業系統把複雜的硬體操作封裝成簡單的介面給使用者/應用程式使用,
python基礎之檔案操作基礎
Python基礎之檔案操作 1、檔案的開啟方式 讀檔案的方式有四種: r:只讀 rb:二進位制讀取 r+:讀寫,先讀在寫,在檔案游標處接著寫 r+b:二進位制讀取資料,英文讀取英文,中文轉為二進位制 # #檔案操作,開啟一個檔
python 3 之檔案操作
檔案操作 1.檔案處理的流程 1)開啟檔案,得到檔案控制代碼並賦值給一個變數 2)通過控制代碼對檔案進行操作 3)關閉檔案 能呼叫方法的一定是物件
python當中的檔案操作
1.檔案操作 把一個檔案開啟 open 開啟 f = open ('檔案路徑',mode='模式',encoding='編碼格式') 開啟一個檔案操作的時候取到的是一個控制代碼 絕對路徑 從磁碟根目錄開始尋找 相對路徑 相對於當前程式所在的資料夾 ..
python基礎之檔案操作和函式
一、知識點 1.三元運算 a = 2 b = 3 val = 6 if a < b else 7 print(val) 2.檔案讀取 f = open(file='file.txt',mode='r',coding='utf-8') data = f.read() print(d
python 對csv檔案操作
# scrapy pipline class BazaarPipeline(object): def open_spider(self, spider): self.filename = open("digital.csv", "wb") # 建立一
python中關於檔案操作的總結
本來想對一個檔案重複執行某一個函式,但是隻有第一次執行函式時有結果,後面的幾次都沒有結果,最終發現是在函式外開啟檔案,第一次執行沒有問題,第二次執行時,檔案已經開啟,函式找不到該檔案了,或者是檔案沒有關閉,具體原因需要檢視python內部的執行機制。舉例如下: 定義一個函式,輸出文字檔案裡的
python中的檔案操作總結
目錄 檔案:資料的抽象和集合 檔案是儲存在輔助儲存器上的資料序列 檔案是資料儲存的一種形式 檔案展現形態:文字檔案和二進位制檔案 文字檔案 VS. 二進位制檔案 檔案檔案和二進位制檔案只是檔案的展示方式 本質上,所有檔案都是二進位制形式儲存 形式上,所有檔案採用兩種方式展示 文字檔案 由單一特定編
python 基礎 day03—檔案操作
對檔案操作流程: 1.開啟檔案,得到檔案控制代碼並賦值給一個變數 2.通過控制代碼對檔案進行操作 3.關閉檔案 建立一個名為lyrics的txt檔案在目錄下 f = open('lyrics',encoding="utf-8") #開啟檔案 first_line = f.readline()
Python練習_檔案操作_day8
1. 1.作業 1,有如下檔案,a1.txt,裡面的內容為: 老男孩是最好的學校, 全心全意為學生服務, 只為學生未來,不為牟利。 我說的都是真的。哈哈 分別完成以下的功能: a,將原檔案全部讀出來並列印。 b,在原檔案後面追加一行內容:信不信由你,反正我信了。 c,將原檔案
08-python基礎知識-檔案操作
檔案操作 目錄管理(os) 示例: import os # 執行命令 # 清屏 # os.system('cls') # 調出計算器 # os.system('calc') # 作業系統型別,nt表示windows,posix表示類unix # print(os.nam
【十二】python基礎之檔案操作
給要開啟的檔案物件指定一個名字,這樣可在完成操作之後迅速關閉檔案,防止一些無用的檔案物件佔用記憶體 1 2 3 4 5 file_object = open('thefile.txt') try: all_the_text = fil
Python基礎(檔案操作)
檔案讀取: 1 #檔案讀取方式一 2 f=open("a.txt","r+",encoding="utf8") 3 data=f.read() 4 print(data) 5 f.close() 6 7 #檔案讀取方式二 8 with open("a.txt","r+",encodi
Python(44)_檔案操作
1 r+ 讀寫模式:先讀後寫 #-*-coding:utf-8-*- ''' 讀寫-先讀後寫 ''' f = open('log.txt',mode='r+',encoding='utf-8') print(f.read()) f.write('bowen123') f.close()