python 文件對象的方法

2021-12-25 電子經驗交流

下表列出了 file 對象常用的函數:

方法功能描述
open(path)方法用於打開一個文件,並返回文件對象,在對文件進行處理過程都需要使用到這個函數,如果該文件無法被打開,會拋出 OSError。close()關閉文件。關閉後文件不能再進行讀寫操作。flush()刷新文件內部緩衝,直接把內部緩衝區的數據立刻寫入文件, 而不是被動的等待輸出緩衝區寫入。fileno()返回一個整型的文件描述符(file descriptor FD 整型), 可以用在如os模塊的read方法等一些底層操作上。isatty()如果文件連接到一個終端設備返回 True,否則返回 False。read(size)

從文件讀取指定的字節數,如果未給定或為負則讀取所有。

readline(size)

讀取整行,包括 "\n" 字符。

readlines(sizeint)

讀取所有行並返回列表,若給定sizeint>0,返回總和大約為sizeint字節的行, 實際讀取值可能比 sizeint 較大, 因為需要填充緩衝區。

seek(offset)

移動文件讀取指針到指定位置

tell()

返回文件當前位置。

truncate(size)

從文件的首行首字符開始截斷,截斷文件為 size 個字符,無 size 表示從當前位置截斷;截斷之後後面的所有字符被刪除,其中 windows 系統下的換行代表2個字符大小。

write(str)

將字符串寫入文件,返回的是寫入的字符長度。

writelines(sequence)

向文件寫入一個序列字符串列表,如果需要換行則要自己加入每行的換行符。

(python集成開發環境(IDE) PyCharm的安裝和使用 在 PyCharm 軟體中測試)

write(string):將 string 寫入到文件中, 然後返回寫入的字符數。
# 打開一個文件f = open("test.txt", "w")  #以寫 模式打開文件f.write( "我現在正在學習 Python。\n python是一個非常好的語言!\n" )# 關閉打開的文件f.close()

read():讀取一個文件的內容
f = open("test.txt", "r")  #以讀 模式打開文件s = f.read()  #讀出文件中的所有數據print(s)# 關閉打開的文件f.close()

輸出

我現在正在學習 Python。 python是一個非常好的語言!

readline():會從文件中讀取單獨的一行
# 打開一個文件f = open("test.txt", "r")  #以讀 模式打開文件str = f.readline()  #讀出一行數據print(str)# 關閉打開的文件f.close()

輸出結果為

readlines():將返回該文件中包含的所有行(帶參數可以讀取指定行)。
f = open("test.txt", "r")  #以讀 模式打開文件b = f.readlines(1)  #讀出文件中的所有數據print(b)# 關閉打開的文件f.close()

輸出

seek():如果要改變文件當前的位置, 可以使用 f.seek(offset, from_what) 函數。

from_what 的值, 如果是 0 表示開頭, 如果是 1 表示當前位置, 2 表示文件的結尾,例如:

seek(x,0) : 從起始位置即文件首行首字符開始移動 x 個字符

seek(x,1) :表示從當前位置往後移動x個字符

seek(-x,2):表示從文件的結尾往前移動x個字符

from_what 值為默認為0,即文件開頭。下面給出一個完整的例子:

f = open("test.txt", "r")  s = f.read()  print('s = ',s)a = f.read()  print('a = ',a)f.seek(0)    b = f.read()  print('b = ',b)f.close()

輸出結果為

s =  我現在正在學習 Python。 python是一個非常好的語言!
a = b = 我現在正在學習 Python。 python是一個非常好的語言!

相關焦點

  • Python文件路徑處理
    Size: 4          Blocks: 8          IO Block: 4096   regular file    Device: fd0ah/64778d Inode: 69309229738  Links: 1    Access: (0644/-rw-r--r--)  Uid: ( 1042/jeffery)   Gid: (  110/  staff)
  • 如何在Visual Studio調整python可啟動文件
    >python類和對象在Visual Studio開發工具中,創建python應用程式,默認有個python文件,這個為主啟動文件;如果再創建一個python文件,想要運行這個文件,需要將其設置為主啟動文件,就可以調試了。
  • Python 導入 8 種數據文件的方法
    導入數據有很多方式,不同的數據文件需要用到不同的導入方式,相同的文件也會有幾種不同的導入方式。下面總結幾種常用的文件導入方法。大多數情況下,會使用NumPy或Pandas來導入數據,因此在開始之前,先執行:import numpy as npimport pandas as pd兩種獲取help的方法很多時候對一些函數方法不是很了解
  • 配置文件Yaml之python版
    yaml文件後綴是有要求的,必須為yml 注意和ini文件做對比yaml 文件介紹1、基礎規範•大小寫敏感•使用縮進表示層級關係•縮進不允許使用tab,只允許空格•縮進的空格數不重要,只要相同層級的元素左對齊即可•'#'表示注釋2、支持的類型•對象 這裡的對象是指 鍵值對的集合,類似python字典•數組•純量 類似我們說的常量,不可在分在變的。
  • 文科生快速入門python(十三) | 文件讀寫詳解
    除了之外【python辦公自動化(一) | chardet庫自動讀寫多編碼格式的文件】中描述的編碼錯誤外,還有忘記close()造成讀不到文件、搞混r,w,a,x模式、寫錯read, readline, readlines方法之類的常見錯誤。
  • 使用文件對象讀取Python文件內容
    使用open函數可以打開文件並返回一個文件對象,返回的文件對象用來讀取和寫入文件內容。那麼,如何使用文件對象來讀取文件內容呢?如何讓讀取的文件內容初始化一個Python列表呢?文本文件和二進位文件使用文件對象讀取文件內容時,要根據文件的不同存儲類型選擇不同的讀取方式。
  • 使用Python下載文件的簡單示例
    然後,我們使用請求模塊的get方法來獲取URL。在get方法中,我們設置allow_redirects到True,這將允許在URL中重定向,而重定向後的內容將分配給變量myfile.最後,我們打開一個文件來編寫獲取的內容。
  • Python讀入文件報錯的處理方法
    文章導讀:本文主要 解決python在讀入文件時的報錯:ParserError:Error tokenizing data.C error:Expected x fields in line nnn,saw y。文章分為兩部分,第一部分解釋報錯的意思,定位原因;第二部分給出解決方法。
  • 一文看懂Python對文件和文件夾的操作: 含os, shutil和glob模塊.Python學習面試必讀.
    在利用Python或Django從事Web開發時除了必須要了解Python面向對象的編程思想,還必須熟練掌握對文件夾和文件的操作。小編我精心準備了個小結,教你如何利用python進行基本的文件和文件夾操作,並重點介紹了如何使用os, shutil和glob模塊進行常見的文件和文件夾操作,如遍歷,刪除文件和查找文件。
  • python編程從入門到實踐:讀取整個文件和創建包含文件各行的內容
    1.python學習筆記:在文件編輯器中新建一個文件,寫幾句話來總結一下你至此學到的Python知識,其中每一行都以「In python you can」打頭。將這個文件命名為learning_python.txt,並將其存儲到為完成本章練習而編寫的程序所在的目錄中。
  • 使用Python圖像處理庫Pillow處理圖像文件
    PIL.Image提供了一些包括從文件中加載圖像和創建新圖像的函數,其中的Image用於表示圖像對象。使用PIL.Image模塊的open()函數可以打開一個圖像,返回一個圖像對象,然後調用圖像對象的show()方法,可以在屏幕上顯示圖像。
  • Python判斷文件是否存在的三種方法
    blog:https://my.oschina.net/jhao104/blog  github:https://github.com/jhao104通常在讀寫文件之前,需要判斷文件或目錄是否存在,不然某些處理方法可能會使程序出錯。所以最好在做任何操作之前,先判斷文件是否存在。
  • python讀寫文件
    今天我們就以這幾個需求為背景來看看python是如何讀寫文件的。基本概念介紹我們知道python中一切都是對象,「文件」也不例外。下面的實驗可以看出文件是名叫『_io.TextIOWrapper』的class。
  • Python中__init__.py文件的作用詳解
    要想清楚理解__init__.py文件的作用,還需要詳細了解一下import語句引用機制:可以被import語句導入的對象是以下類型:•模塊文件(.py文件)•C或C++擴展(已編譯為共享庫或DLL文件)•包(包含多個模塊)•內建模塊(使用C編寫並已連結到Python解釋器中)
  • 用Python複製文件的9個方法
    python 中有許多「開蓋即食」的模塊(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。
  • python命令是如何操作文件file的?
    前言無論哪一個作業系統,亦或是哪一門語言,當使用到一些高級層次的時候,必然會和文件打交道,因為所有的內容不可能都在內存中存儲和傳輸。用到文件,就必然會有創建文件、打開文件、寫文件、複製文件、刪除文件這些操作,下面我們來看看在python中是如何利用命令來操作file文件的。
  • Python利用openpyxl處理excel文件(openpyxl的安裝及簡介)
    但是試想,如果把上述excel公式變成諸如python中的if-else結構,其可讀性肯定是不容置疑的……今天,我們來介紹一款excel處理利器—openpyxl(python庫文件)。通過openpyxl的簡單安裝過程,熟悉python庫文件安裝的通用過程;(二)openpyxl的導入及簡單使用。學習openpyxl的簡單使用。
  • Python 文件與目錄操作方法總結
    pathlib.Path()對象具有.iterdir()方法,用於創建目錄中所有文件和文件夾的迭代器。 由.iterdir()生成的每個條目都包含有關文件或目錄的信息,例如其名稱和文件屬性。pathlib最初是在 Python 3.4 中引入的,是 Python 的一個很好的補充,它為文件系統提供了面向對象的接口。
  • 超詳細的Python文件操作知識
    但是,如果是一個對象(例如列表、字典、元組等),就無法直接寫入到一個文件裡,需要對這個對象進行序列化,然後才能寫入到文件裡。序列化:將數據從內存持久化保存到硬碟的過程。反序列化:將數據從硬碟加載到內存的過程。python 裡存入數據只支持存入字符串和二進位。
  • Python讀取ini配置文件
    python看過我之前文章的同學可能知道,最近一直在做百度語音合成的功能,進一步的延伸功能,此次是批量生成文章的語音文件目前是使用python來實現的,將代碼打包成了exe文件,方便客戶進行測試。下面說一下配置文件,本次直說ini格式的配置文件。創建ini文件在目錄中創建.ini文件,我們以config.ini文件名為例。進行創建。在創建好的文件內編寫配置信息。