從0開始學python-6.2 用python讀寫文件

2021-01-15 阿達老師

上節課我們學習了什麼文件系統,文件樹的組成結構是什麼樣的。我們還學習了用python來查找、重命名一個文件。

這節課,我們一起學習一下怎麼用python操作一個文件的內容。

文件操作

對一個文件,我們可以1)讀取裡面的內容、2)往文件裡寫內容、3)追加文件內容。我們來看看用python怎麼做這些事情。

打開文件

在對文件內容操作之前,我們首先要打開文件。我們可以使用open函數打開文件,看代碼:

file = open('./hello.py', 'r')

open函數需要兩個參數,第一個參數是文件位置,就是我們要打開哪個文件。第二個參數是打開模式。

什麼是打開模式呢?就是我們打開這個文件後要做哪個類型的操作。文件操作有這樣幾個類型

讀(read) r ;r+寫(write)w;w+追加(append)a;a+

可以參考下面的表:

在不知道用哪個模式的時候,可以參考下圖:

讀文件

我們怎麼讀取文件內容呢?看代碼:

# 打開一個文件file = open('./hello.py', 'r')lineArr = file.readlines()for line in lineArr: print(line)file.close()

寫文件

# 打開一個文件file = open("foo.txt", "w")file.write( "hello\n") # 關閉打開的文件fo.close()

往文件裡輸出一個99乘法表

def buildRow(a): b = 0 multi = [] while b < a: b = b + 1 multi.append("%s*%s=%s" % (str(a), str(b), str(a * b))) return " ".join(multi)tempFile = open('./99.txt','w+')a = 0while a < 9: a = a + 1 tempFile.write(buildRow(a)+"\n")tempFile.close()

追加文件內容

當我們想往一個文件裡追加內容的時候,我們可以使用 a+ 模式。看代碼:

tempFile = open('./99.txt','a+')tempFile.write("hello world\n")tempFile.close()

在a+ 模式下面,打開的文件指針會直接定位到文件末尾。我們的write會直接寫到文件內容的最後面。

對文件的常用操作就這些,小朋友們掌握了嗎?

阿達老師-孩子身邊的編程專家

相關焦點

  • python使用with as處理文件的讀寫
    文件處理的兩種情況:1、忘記關閉文件。2、文件讀寫異常,未做處理。在python中使用with語句,可以自動調用close()方法,同時也解決了異常問題。with open('test.txt','w') as f:f.write('Hello, python!')python文件讀寫模式:r:以只讀方式打開文件,指針放到文件的開頭。rb:以二進位格式打開文件用於只讀,指針放到文件的開頭。r+:打開文件用於讀寫,指針放到文件的開頭。
  • 從零開始學 Python 之輸入與輸出
    w+打開一個文件用於讀寫。如果該文件已存在則打開文件,並從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件。wb+以二進位格式打開一個文件用於讀寫。如果該文件已存在則打開文件,並從開頭開始編輯,即原有內容會被刪除。如果該文件不存在,創建新文件。
  • Python利用openpyxl處理excel文件(openpyxl的安裝及簡介)
    但是試想,如果把上述excel公式變成諸如python中的if-else結構,其可讀性肯定是不容置疑的……今天,我們來介紹一款excel處理利器—openpyxl(python庫文件)。根據openpyxl官方文檔,結合個人近年來使用心得,總結openpyxl應用中以下幾個知識點:(一)openpyxl的安裝、導入及相關注意事項;(二)對excel文件的打開、讀寫、編輯、保存相關;(三)對excel文件中樣式的編輯;(四)對excel文件中單元格及行列的操作;(五)在excel文件中公式及圖表的簡單操作
  • biopython簡介
    OBF的成員項目部分如下 biopython基於python這個簡單易學的程式語言,提供了一系列處理常見生物信息任務的接口,具體可以完成以下幾種任務 1. 對常用的文件格式,比如fasta, blast等,進行讀寫 2.
  • Python讀取ini配置文件
    python看過我之前文章的同學可能知道,最近一直在做百度語音合成的功能,進一步的延伸功能,此次是批量生成文章的語音文件。目前是使用python來實現的,將代碼打包成了exe文件,方便客戶進行測試。下面說一下配置文件,本次直說ini格式的配置文件。創建ini文件在目錄中創建.ini文件,我們以config.ini文件名為例。進行創建。在創建好的文件內編寫配置信息。
  • 序列比對在biopython中的處理
    序列比對是生物信息學分析中的常見任務,包含局部比對和全局比對兩大算法,局部比對最經典的代表是blast, 全局比對則用於多序列比對。在biopython中,支持對序列比對的結果進行讀寫,解析,以及運行序列比對的程序。
  • 初識python
    2,python歷史。宏觀上:python2 與 python3 區別:python2 源碼不標準,混亂,重複代碼太多,python3 統一 標準,去除重複代碼。3,python的環境。編譯型:一次性將所有程序編譯成二進位文件。缺點:開發效率低,不能跨平臺。優點:運行速度快。
  • 廣州Python測試培訓
    除了極少的事情不能做之外,其他基本上都可以用,黑客編程、爬蟲編寫、機器學習、人工智慧等等。使用模塊進行程序設計3、使用Python創建文件、訪問、刪除文件。
  • 乾貨| 完美Python入門基礎知識點總結
    的字串列表有2種取值順序從左到右索引默認0開始的,最大範圍是字符串長度少1從右到左索引默認-1開始的,最大範圍是字符串開頭List(列表) 是 Python 中使用最頻繁的數據類型列表可以完成大多數集合類的數據結構實現。
  • Python實現視頻裁剪添加水印功能
    python目前我們實現的是將單獨一個視頻進行裁剪。本次我們將目前視頻截取一小段內容,並為其添加一個水印圖片。我們使用python的moviepy類庫,首先安裝moviepy類庫,使用pip進行安裝,命令如下:pip install moviepy簡短的介紹一下,MoviePy是一個用於視頻編輯的python模塊,可以用它實現一些基本的操作(比如視頻剪輯,視頻拼接,插入標題),還可以實現視頻合成,還有視頻處理,或用它加入一些自定義的高級的特效。
  • 如何快速簡單的安裝opencv-python
    安裝環境(python3.6+Win10)下載安裝python3.6.8https://www.python.org/downloads/windows/python3.6.8下載將pip源更換到國內鏡像用pip管理工具安裝庫文件時,默認使用國外的源文件,因此在國內的下載速度會比較慢,可能只有50KB/s。
  • 人生苦短,我用Python,那麼問題來了,普通人要學python嗎?
    最近在教育店集中地兒瞎晃悠,震驚的發現這年頭六歲娃兒都要學編程了,當時我的表情是這樣的。回到家抱著冷嘲熱諷的心,我特意百度搜索了下新聞,結果我的表情是這樣的:1、Python將納入浙江省高考!從 2018 年起浙江省信息技術教材程式語言將會更換為 Python。
  • Python視頻教程網課編程零基礎入門數據分析網絡爬蟲全套Python...
    教程大合集,包含python所有就業方向,每套課程均來自市面上主流培訓機構的原版教程,價值都在數百元以上 每套課程均包含:視頻課程+課件+原始碼 重要:建議根據自己工作方向和需求,重點選擇2到3套課程學精,吃透,然後在工作 重要:零基礎小白建議先選擇零基礎全能篇的一套課程學精,然後再根據自 己的需求和規劃選擇學習其他方向課程,學完後一定要多實踐
  • 如何使用 Python 構建 PC 通信?
    ppa:gijzelaar/snap7$ apt-get update$ apt-get install libsnap71 libsnap7-dev2、安裝python-snap7Snap7的Python庫安裝就簡單很多了,不管是Windows
  • python編程從入門到實踐:讀取整個文件和創建包含文件各行的內容
    1.python學習筆記:在文件編輯器中新建一個文件,寫幾句話來總結一下你至此學到的Python知識,其中每一行都以「In python you can」打頭。將這個文件命名為learning_python.txt,並將其存儲到為完成本章練習而編寫的程序所在的目錄中。
  • python基礎課程 第5章 奇妙的內建函數
    今天我們來講講 python 的常用內建函數,以便於大家在日常編程過程中遇到類似的場景可以直接拿來使用,不用再重複自己了。python 內建函數(python自帶的函數) 數量加起來大概有70多個,今天我們主要講常用的一些,至於更多的內容可以在以後的基礎教程裡慢慢學到。
  • 用Python實現職工信息管理系統
    刪除職工數據```pythonid = input('請輸入你要修改的職工編號')ids = [i[0] for i in data]if id not in ids:print('您查詢的職工不存在')returnelse:del data[ids.index(id)]print
  • python超聲波傳感_樹莓派超聲波傳感器python - CSDN
    超聲波測距應用廣泛,本次實戰通過樹莓派B+連接HC-SR04超聲波測距傳感器,用python GPIO控制傳感器完成距離測定,並將距離顯示在屏幕上。
  • 編程界新晉「網紅」Python到底是什麼?學Python真的有用嗎?
    舉例:「文件批量重命名」,我們來拆解一下手動完成這個任務需要的步驟。但我們仔細觀察這些步驟便可以發現這個任務總共就一個處理邏輯:對於文件夾中的每一個圖片,如果照片的拍攝時間順序等於表格裡的拍照順序,那麼就將圖片重命名為那一行拍攝順序表格中的(部門+姓名)信息。
  • 如何用python在工作中「偷懶」?
    win32con.MOUSEEVENTF_LEFTUP, x, y, 0, 0) # 點擊滑鼠左鍵 if t == 0: time.sleep(random.random()*2+1) # sleep一下 else: time.sleep(t) return 0# 測試move_click(30, 30)def resolution(): # 獲取屏幕解析度