
- Python 基礎
- Python - 首頁
- Python - 概述
- Python - 歷史
- Python - 特性
- Python vs C++
- Python - Hello World 程式
- Python - 應用領域
- Python - 直譯器
- Python - 環境搭建
- Python - 虛擬環境
- Python - 基本語法
- Python - 變數
- Python - 資料型別
- Python - 型別轉換
- Python - Unicode 系統
- Python - 字面量
- Python - 運算子
- Python - 算術運算子
- Python - 比較運算子
- Python - 賦值運算子
- Python - 邏輯運算子
- Python - 位運算子
- Python - 成員運算子
- Python - 身份運算子
- Python - 運算子優先順序
- Python - 註釋
- Python - 使用者輸入
- Python - 數字
- Python - 布林值
- Python 控制語句
- Python - 控制流
- Python - 決策
- Python - if 語句
- Python - if else
- Python - 巢狀 if
- Python - match-case 語句
- Python - 迴圈
- Python - for 迴圈
- Python - for-else 迴圈
- Python - while 迴圈
- Python - break 語句
- Python - continue 語句
- Python - pass 語句
- Python - 巢狀迴圈
- Python 函式與模組
- Python - 函式
- Python - 預設引數
- Python - 關鍵字引數
- Python - 僅限關鍵字引數
- Python - 位置引數
- Python - 僅限位置引數
- Python - 可變引數
- Python - 變數作用域
- Python - 函式註解
- Python - 模組
- Python - 內建函式
- Python 字串
- Python - 字串
- Python - 字串切片
- Python - 修改字串
- Python - 字串連線
- Python - 字串格式化
- Python - 跳脫字元
- Python - 字串方法
- Python - 字串練習
- Python 列表
- Python - 列表
- Python - 訪問列表元素
- Python - 修改列表元素
- Python - 新增列表元素
- Python - 刪除列表元素
- Python - 遍歷列表
- Python - 列表推導式
- Python - 排序列表
- Python - 複製列表
- Python - 合併列表
- Python - 列表方法
- Python - 列表練習
- Python 元組
- Python - 元組
- Python - 訪問元組元素
- Python - 更新元組
- Python - 解包元組
- Python - 遍歷元組
- Python - 合併元組
- Python - 元組方法
- Python - 元組練習
- Python 集合
- Python - 集合
- Python - 訪問集合元素
- Python - 新增集合元素
- Python - 刪除集合元素
- Python - 遍歷集合
- Python - 合併集合
- Python - 複製集合
- Python - 集合運算子
- Python - 集合方法
- Python - 集合練習
- Python 字典
- Python - 字典
- Python - 訪問字典元素
- Python - 修改字典元素
- Python - 新增字典元素
- Python - 刪除字典元素
- Python - 字典檢視物件
- Python - 遍歷字典
- Python - 複製字典
- Python - 巢狀字典
- Python - 字典方法
- Python - 字典練習
- Python 陣列
- Python - 陣列
- Python - 訪問陣列元素
- Python - 新增陣列元素
- Python - 刪除陣列元素
- Python - 遍歷陣列
- Python - 複製陣列
- Python - 反轉陣列
- Python - 排序陣列
- Python - 合併陣列
- Python - 陣列方法
- Python - 陣列練習
- Python 檔案處理
- Python - 檔案處理
- Python - 寫入檔案
- Python - 讀取檔案
- Python - 重新命名和刪除檔案
- Python - 目錄
- Python - 檔案方法
- Python - OS 檔案/目錄方法
- Python - OS 路徑方法
- 面向物件程式設計
- Python - OOPs 概念
- Python - 類與物件
- Python - 類屬性
- Python - 類方法
- Python - 靜態方法
- Python - 建構函式
- Python - 訪問修飾符
- Python - 繼承
- Python - 多型
- Python - 方法重寫
- Python - 方法過載
- Python - 動態繫結
- Python - 動態型別
- Python - 抽象
- Python - 封裝
- Python - 介面
- Python - 包
- Python - 內部類
- Python - 匿名類和物件
- Python - 單例類
- Python - 包裝類
- Python - 列舉
- Python - 反射
- Python 錯誤與異常
- Python - 語法錯誤
- Python - 異常
- Python - try-except 塊
- Python - try-finally 塊
- Python - 丟擲異常
- Python - 異常鏈
- Python - 巢狀 try 塊
- Python - 使用者自定義異常
- Python - 日誌記錄
- Python - 斷言
- Python - 內建異常
- Python 多執行緒
- Python - 多執行緒
- Python - 執行緒生命週期
- Python - 建立執行緒
- Python - 啟動執行緒
- Python - 加入執行緒
- Python - 執行緒命名
- Python - 執行緒排程
- Python - 執行緒池
- Python - 主執行緒
- Python - 執行緒優先順序
- Python - 守護執行緒
- Python - 執行緒同步
- Python 同步
- Python - 執行緒間通訊
- Python - 執行緒死鎖
- Python - 中斷執行緒
- Python 網路程式設計
- Python - 網路程式設計
- Python - Socket 程式設計
- Python - URL 處理
- Python - 泛型
- Python 庫
- NumPy 教程
- Pandas 教程
- SciPy 教程
- Matplotlib 教程
- Django 教程
- OpenCV 教程
- Python 雜項
- Python - 日期與時間
- Python - 數學
- Python - 迭代器
- Python - 生成器
- Python - 閉包
- Python - 裝飾器
- Python - 遞迴
- Python - 正則表示式
- Python - PIP
- Python - 資料庫訪問
- Python - 弱引用
- Python - 序列化
- Python - 模板
- Python - 輸出格式化
- Python - 效能測量
- Python - 資料壓縮
- Python - CGI 程式設計
- Python - XML 處理
- Python - GUI 程式設計
- Python - 命令列引數
- Python - 文件字串
- Python - JSON
- Python - 傳送郵件
- Python - 擴充套件
- Python - 工具/實用程式
- Python - GUIs
- Python 高階概念
- Python - 抽象基類
- Python - 自定義異常
- Python - 高階函式
- Python - 物件內部
- Python - 記憶體管理
- Python - 元類
- Python - 使用元類進行超程式設計
- Python - 模擬和存根
- Python - Monkey Patching
- Python - 訊號處理
- Python - 型別提示
- Python - 自動化教程
- Python - Humanize 包
- Python - 上下文管理器
- Python - 協程
- Python - 描述符
- Python - 診斷和修復記憶體洩漏
- Python - 不可變資料結構
- Python 有用資源
- Python - 問答
- Python - 線上測驗
- Python - 快速指南
- Python - 參考
- Python - 速查表
- Python - 專案
- Python - 有用資源
- Python - 討論
- Python 編譯器
- NumPy 編譯器
- Matplotlib 編譯器
- SciPy 編譯器
Python writelines() 方法
Python 的 writelines() 方法將一系列字串寫入檔案。該序列可以是任何產生字串的可迭代物件,通常是字串列表。
當該方法將一系列字串寫入檔案時,它首先寫入內部緩衝區;一旦該緩衝區已滿,內容就會被傳輸到當前檔案。由於這種緩衝機制,文字可能直到呼叫 flush() 或 close() 方法後才會實際顯示在檔案中。
如果當前檔案為空,該方法會從開頭新增內容;但如果它已經包含一些文字,則新增此文字的位置取決於檔案指標的位置;而此位置根據檔案模式而變化。各種情況如下:
- 如果檔案以寫入模式 (w 或 w+) 開啟,則檔案中的現有文字將被擦除,檔案指標移動到檔案開頭。因此,在這種情況下,writelines() 方法從開頭寫入。
- 如果檔案以追加模式 (a 或 a+) 開啟,則現有文字保持不變,檔案指標保持在檔案末尾。因此,新文字將新增到現有內容之後。
- 如果檔案以讀寫模式 (r+) 開啟,則指標移動到檔案開頭並替換檔案中的現有內容。但是,不會替換整個文字;writelines() 方法只用新字串物件的字元替換現有字串中的字元。檔案中剩餘的文字保持不變。
- 如果檔案以讀取模式 (r) 開啟,此方法無效。
語法
以下是 Python 檔案 writelines() 方法的語法:
fileObject.writelines( sequence )
引數
sequence − 這是字串的序列。
返回值
此方法不返回值。
示例
考慮一個包含字串的演示檔案“foo.txt”。
This is 1st line This is 2nd line This is 3rd line This is 4th line This is 5th line
以下示例演示了 Python 檔案 writelines() 方法的用法。演示檔案以寫入 (w) 模式開啟,因此檔案中的現有內容將被擦除,並使用此方法插入新內容。由於此方法不返回值,因此必須直接檢查檔案以檢視反映出的更改。
# Open a file in write mode fo = open("foo.txt", "w") print("Name of the file: ", fo.name) # Assuming file has following 5 lines # This is 1st line # This is 2nd line # This is 3rd line # This is 4th line # This is 5th line # Write a new line into the file seq = ["This is the new line", '\n', "This is another new line"] line = fo.writelines(seq) print("Check the file to see the reflected changes") # Close opened file fo.close()
當我們執行上述程式時,它會產生以下結果:
Name of the file: foo.txt Check the file to see the reflected changes
示例
在上面的例子中,需要開啟檔案來檢查更改是否生效。但是我們也可以嘗試在終端本身顯示檔案內容。為此,一旦使用 `writelines()` 方法重寫檔案,我們就關閉檔案。然後,以讀取 (r) 模式再次開啟此檔案,並使用 `read()` 方法讀取檔案內容。
# Open a file in write mode fo = open("foo.txt", "w") print("Name of the file: ", fo.name) # Assuming file has following 5 lines # This is 1st line # This is 2nd line # This is 3rd line # This is 4th line # This is 5th line # Write a new line seq = ["This is the new line", '\n', "This is another new line"] line = fo.writelines(seq) # Close opened file fo.close() # Open the file again in read mode fo = open("foo.txt", "r") line = fo.read() print("File Contents:", line) # Close opened file again fo.close()
執行上面的程式後,輸出將如下所示在終端上顯示:
Name of the file: foo.txt File Contents: This is the new line This is another new line
示例
如果嘗試以寫入 (w) 模式開啟目錄中不存在的檔案,則會建立一個具有給定名稱的新檔案。在下面的示例中,`writelines()` 方法在此檔案中呼叫,並將新內容插入其中。
# Open a non-existent file in write mode fo = open("new.txt", "w") print("Name of the file: ", fo.name) # Write a new text seq = ["Hello", '\n', "Welcome to Tutorialspoint"] line = fo.writelines(seq) print("Check the file to see the reflected changes") # Close opened file fo.close()
讓我們編譯並執行給定的程式,輸出將如下所示:
Name of the file: new.txt Check the file to see the reflected changes
示例
當檔案以追加 (a 或 a+) 模式開啟時,也可以使用 `writelines()` 方法。
在這個例子中,一個名為“foo.txt”的檔案以追加模式“a”開啟。由於檔案以追加模式開啟,`writelines()` 方法將內容寫入檔案的末尾。使用 `write()` 方法,新行緊跟在字串的最後一個字元之後;但使用 `writelines()` 方法,由於換行符和字串作為物件傳遞給列表,新字串將追加到下一行。檔案內容將在終端本身顯示。
# Let the test file contain the following strings # Hello! # This is Tutorialspoint # Welcome # Open the test file in append mode fo = open("test.txt", "a") print("Name of the file: ", fo.name) seq = ['\n', "This is the new line"] fo.writelines(seq) # Close opened file fo.close() # Open the file again in read mode fo = open("test.txt", "r") line = fo.read() print("File Contents:", line) # Close opened file again fo.close()
程式編譯並執行後,輸出將如下所示在終端顯示:
Name of the file: test.txt File Contents: Hello! This is Tutorialspoint Welcome This is the new line
示例
如果在使用讀寫模式 (r+) 開啟的檔案上使用 `writelines()` 方法,指標將移動到檔案的開頭,並替換檔案中現有的內容。
在下面的示例中,我們以“r+”模式開啟現有檔案“foo.txt”。檔案中現有的字元將從開頭被傳遞作為列表的字串物件中的字元替換。檔案中剩餘的文字保持不變。
# Open the test file in append mode fo = open("foo.txt", "r+") print("Name of the file: ", fo.name) seq = ["This is a new line", '\n', "This is another new line", '\n'] fo.writelines(seq) print("Check the file to see the reflected changes") # Close opened file again fo.close() # Open the file again in read mode fo = open("foo.txt", "r") line = fo.read() print("File Contents:", line) # Close opened file again fo.close()
讓我們編譯並執行上面的程式,得到如下結果:
Name of the file: foo.txt Check the file to see the reflected changes File Contents: This is a new line This is another new line d line This is 4th line This is 5th line