file 关闭_python文件file
生活随笔
收集整理的這篇文章主要介紹了
file 关闭_python文件file
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、文件
- 長久保存信息,連續的字節(字符)序列
- 文件對象
- 內置函數
- open(file_name,access_mode,buffering)
- file()
- 內置方法
- 輸出
- read(size):從文件讀取size個字節(一次最多可讀取的字符(或字節)數),當未給定或給定負值的時候,讀取剩余的所有字節,然后后作為字符串返回
- readline(size):從文件中讀取并返回一行(包括行結束符),或返回最大size個字符
- readlines(sizhint=0):讀取文件的所有行并作為一個列表返回(包含所有行的結束符)
- 輸入
- write():向文件寫入字符串
- writelines():向文件寫入字符串序列seq
- 移動
- file.seek(off,whence=0):在文件中移動文件指針,從whence(0代表文件開始,1代表當前位置,2代表文件末尾)偏移off字節
- file.tell():返回當前文件中的位置
- os模塊
- listdir(path):列出目錄下的文件
- getcwd():獲取當前工作目錄
- chdir(newdir):改變工作目錄
- makedirs(name, mode=511, exist_ok=False):創建多級目錄
- mkdir(path):創建單個目錄
- removedirs(path):刪除多個目錄
- rmdir(path):刪除單個目錄
- chmod(file):修改文件權限與時間戳
- path.split(path):分離文件名
- path.basename(path):獲取文件名
- path.exists(path):判斷文件或目錄是否存在
- path.isdir(path):判斷是否是目錄
- path.isfile(path):判斷是否是文件
- path.getsize(file):獲取文件大小
- linesep:用于在文件中分隔行的字符串
- sep:用來分隔文件路徑名的字符串
- pathsep:用于分隔文件路徑的字符串
- curdir:當前工作目錄的字符串名稱
- pardir:(當前工作目錄的)父目錄字符串名稱
- 內置屬性
- file.close 表示文件已經被關閉,否則為False
- file.encoding 表示文件所使用的編碼
- file.mode 表示文件打開時的范問模式
- file.name 表示文件已經被關閉,否則為False
- file.newlines 表示文件所采用的分隔符
- file.softspace 為0表示在輸出一數據后,要再加上一個空格符,為1表示不加,這個屬性一般用不到
- 標準文件對象
- 標準輸入
- sys.stdin
- sys.stdin.read() 類文件對象,可以調用文件對象的方法
- 標準輸出
- sys.stdout
- sys.stdout.write()
- 標準錯誤
- 標準輸入
- sys.error
- 持久化
- 輸出
- 內置函數
二、打開關閉
2.1、open函數
- 負責打開文件,帶有很多參數
- 第一個參數(文件的路徑和名稱)必須有
- 第二個參數mode:表明文件用什么方式打開
- r:以只讀方式打開
- w:寫方式打開,會覆蓋之前的內容
- x:創建方式打開,如文件已存在,報錯
- a:append方式,以追加的方式對文件內容進行寫入
- b:binary方式,二進制方式寫入
- t:文本方式打開
- +:可讀寫
2.2、with & read & readline & readlines
- with語句使用的技術是一種稱為上下文管理協議的技術
- 自動判斷文件的作用域,自動關閉不在使用的已打開的文件句柄
2.3、seek(offset,from)
- 移動文件的讀取位置,也叫讀取指針
- from的取值范圍:
- 0:從文件頭開始偏移
- 1:從文件當前位置開始偏移
- 2:從文件末尾開始偏移
- 移動的單位是字節(byte)
- 一個漢字由若干個字節構成
- 返回文件只針對當前位置
2.4 tell()
# tell函數:用來顯示文件讀寫指針的當前位置2.5、文件的寫操作-write
- write(str) 把字符串寫入文件
- writeline(str) 把字符串按行寫入文件
- 區別:
- write函數參數只能是字符串
- writelines參數可以是字符串,也可以說字符序列
三、持久化
3.1、持久化 - pickle
- 序列化:把程序運行中的信息保存在磁盤上
- 反序列化:序列化的逆過程
- pickle:python提供的序列化模塊
- pickle.dump:序列化
- pickle.load:反序列化
3.2、持久化-shelve
- 持久化工具
- 類似字典,用kv保存數據,存取方式跟字典類似
- open,close
3.3、shelve特性
- 不支持多個應用并行寫入
- 為了解決這個問題,open的時候可使用flag=r
- 寫回問題
- shelv不會等待持久化對象進行任何修改
- 解決方法:強制寫回,writeback=True
練習
# 1、編寫一個程序,接收用戶輸入的內容,并且保存為新的文件,如果用戶輸入:w,表示文件保存退出總結
以上是生活随笔為你收集整理的file 关闭_python文件file的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: zap安装提示java_使用API调用进
- 下一篇: 增量更新同步_OneDrive增量更新功