日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

file 关闭_python文件file

發(fā)布時間:2025/3/12 python 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 file 关闭_python文件file 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、文件

  • 長久保存信息,連續(xù)的字節(jié)(字符)序列
  • 文件對象
    • 內(nèi)置函數(shù)
      • open(file_name,access_mode,buffering)
      • file()
    • 內(nèi)置方法
      • 輸出
        • read(size):從文件讀取size個字節(jié)(一次最多可讀取的字符(或字節(jié))數(shù)),當未給定或給定負值的時候,讀取剩余的所有字節(jié),然后后作為字符串返回
        • readline(size):從文件中讀取并返回一行(包括行結(jié)束符),或返回最大size個字符
        • readlines(sizhint=0):讀取文件的所有行并作為一個列表返回(包含所有行的結(jié)束符)
      • 輸入
        • write():向文件寫入字符串
        • writelines():向文件寫入字符串序列seq
      • 移動
        • file.seek(off,whence=0):在文件中移動文件指針,從whence(0代表文件開始,1代表當前位置,2代表文件末尾)偏移off字節(jié)
        • file.tell():返回當前文件中的位置
      • os模塊
        • listdir(path):列出目錄下的文件
        • getcwd():獲取當前工作目錄
        • chdir(newdir):改變工作目錄
        • makedirs(name, mode=511, exist_ok=False):創(chuàng)建多級目錄
        • mkdir(path):創(chuàng)建單個目錄
        • removedirs(path):刪除多個目錄
        • rmdir(path):刪除單個目錄
        • chmod(file):修改文件權(quán)限與時間戳
        • path.split(path):分離文件名
        • path.basename(path):獲取文件名
        • path.exists(path):判斷文件或目錄是否存在
        • path.isdir(path):判斷是否是目錄
        • path.isfile(path):判斷是否是文件
        • path.getsize(file):獲取文件大小
        • linesep:用于在文件中分隔行的字符串
        • sep:用來分隔文件路徑名的字符串
        • pathsep:用于分隔文件路徑的字符串
        • curdir:當前工作目錄的字符串名稱
        • pardir:(當前工作目錄的)父目錄字符串名稱
      • 內(nèi)置屬性
        • file.close 表示文件已經(jīng)被關(guān)閉,否則為False
        • file.encoding 表示文件所使用的編碼
        • file.mode 表示文件打開時的范問模式
        • file.name 表示文件已經(jīng)被關(guān)閉,否則為False
        • file.newlines 表示文件所采用的分隔符
        • file.softspace 為0表示在輸出一數(shù)據(jù)后,要再加上一個空格符,為1表示不加,這個屬性一般用不到
      • 標準文件對象
        • 標準輸入
          • sys.stdin
          • sys.stdin.read() 類文件對象,可以調(diào)用文件對象的方法
        • 標準輸出
          • sys.stdout
          • sys.stdout.write()
        • 標準錯誤
      • sys.error
      • 持久化

二、打開關(guān)閉

2.1、open函數(shù)

  • 負責打開文件,帶有很多參數(shù)
  • 第一個參數(shù)(文件的路徑和名稱)必須有
  • 第二個參數(shù)mode:表明文件用什么方式打開
    • r:以只讀方式打開
    • w:寫方式打開,會覆蓋之前的內(nèi)容
    • x:創(chuàng)建方式打開,如文件已存在,報錯
    • a:append方式,以追加的方式對文件內(nèi)容進行寫入
    • b:binary方式,二進制方式寫入
    • t:文本方式打開
    • +:可讀寫
# 打開文件,用寫的方式

2.2、with & read & readline & readlines

  • with語句使用的技術(shù)是一種稱為上下文管理協(xié)議的技術(shù)
  • 自動判斷文件的作用域,自動關(guān)閉不在使用的已打開的文件句柄
# with語句案例

2.3、seek(offset,from)

  • 移動文件的讀取位置,也叫讀取指針
  • from的取值范圍:
    • 0:從文件頭開始偏移
    • 1:從文件當前位置開始偏移
    • 2:從文件末尾開始偏移
  • 移動的單位是字節(jié)(byte)
  • 一個漢字由若干個字節(jié)構(gòu)成
  • 返回文件只針對當前位置
# seek案例

2.4 tell()

# tell函數(shù):用來顯示文件讀寫指針的當前位置

2.5、文件的寫操作-write

  • write(str) 把字符串寫入文件
  • writeline(str) 把字符串按行寫入文件
  • 區(qū)別:
    • write函數(shù)參數(shù)只能是字符串
    • writelines參數(shù)可以是字符串,也可以說字符序列
# write案例

三、持久化

3.1、持久化 - pickle

  • 序列化:把程序運行中的信息保存在磁盤上
  • 反序列化:序列化的逆過程
  • pickle:python提供的序列化模塊
  • pickle.dump:序列化
  • pickle.load:反序列化
import

3.2、持久化-shelve

  • 持久化工具
  • 類似字典,用kv保存數(shù)據(jù),存取方式跟字典類似
  • open,close
import

3.3、shelve特性

  • 不支持多個應(yīng)用并行寫入
    • 為了解決這個問題,open的時候可使用flag=r
  • 寫回問題
    • shelv不會等待持久化對象進行任何修改
    • 解決方法:強制寫回,writeback=True
#

練習

# 1、編寫一個程序,接收用戶輸入的內(nèi)容,并且保存為新的文件,如果用戶輸入:w,表示文件保存退出

總結(jié)

以上是生活随笔為你收集整理的file 关闭_python文件file的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。