欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實現(xiàn)將內(nèi)容寫入文件的五種方法總結

 更新時間:2023年04月25日 10:21:26   作者:Thomas_Lbw  
本篇帶你詳細看一下python將內(nèi)容寫入文件的方法以及細節(jié),主要包括write()方法、writelines()?方法、print()?函數(shù)、使用?csv?模塊、使用?json?模塊,需要的可以參考一下

一、write()方法

使用 write() 方法:使用 open() 函數(shù)打開文件,然后使用 write() 方法將內(nèi)容寫入文件。例如:

with open('example.txt', 'w') as f:
    f.write('Hello, world!')

open() 函數(shù)是 Python 內(nèi)置的用于打開文件的函數(shù),其常用的參數(shù)及其含義如下:

1.file: 文件名或文件路徑??梢允墙^對路徑或相對路徑。如果是相對路徑,則相對于當前工作目錄。如果省略了路徑,就在當前工作目錄中打開文件。

2.mode: 文件打開模式??梢允且韵轮抵唬?/p>

  • 'r': 只讀模式。默認模式,如果文件不存在,會引發(fā)異常。
  • 'w': 寫模式。如果文件不存在,則創(chuàng)建文件。如果文件已存在,則清空文件并寫入新內(nèi)容。
  • 'x': 獨占創(chuàng)建模式。如果文件不存在,則創(chuàng)建文件。如果文件已存在,則引發(fā)異常。
  • 'a': 追加模式。如果文件不存在,則創(chuàng)建文件。如果文件已存在,則將新內(nèi)容添加到文件末尾。
  • 'b': 二進制模式。與其他模式一起使用,例如 'rb' 或 'wb'。
  • 't': 文本模式。與其他模式一起使用,例如 'rt' 或 'wt'。

3.buffering: 設置緩沖區(qū)的大小。如果省略或為0,則不進行緩沖。如果為1,則行緩沖。如果大于1,則為緩沖區(qū)大小。

4.encoding: 用于編碼和解碼文件內(nèi)容的編碼格式。如果省略,使用默認編碼。

5.errors: 編碼和解碼文件內(nèi)容時遇到錯誤時的處理方式??梢允且韵轮抵唬?/p>

  • 'strict': 默認值,表示遇到錯誤時引發(fā)異常。
  • 'ignore': 忽略錯誤。
  • 'replace': 用 '?' 替換錯誤的字符。
  • 'backslashreplace': 用反斜杠轉義替換錯誤的字符。
  • 'xmlcharrefreplace': 用 XML 實體替換錯誤的字符。
  • 'namereplace': 用 \N{...} 轉義替換錯誤的字符。

6.newline: 控制文本模式下的換行符處理方式??梢允且韵轮抵唬?/p>

  • None: 使用默認換行符 \n。
  • '': 不進行換行符轉換。
  • '\n', '\r', '\r\n', '\u2028', '\u2029': 使用指定的換行符。

7.closefd: 如果為 True,則表示將在打開文件時關閉其底層文件描述符。默認為 True。

8.opener: 用于打開文件的自定義函數(shù)或類。默認為 None。

這些參數(shù)可以以不同的組合使用,以滿足對文件的不同操作需求。例如,open('example.txt', 'w') 會以寫模式打開名為 example.txt 的文件,如果文件不存在,則創(chuàng)建一個新的空文件。 

二、writelines() 方法

writelines() 方法將一個字符串列表寫入文件。例如:

with open('example.txt', 'w') as f:
    lines = ['Hello, world!', 'Welcome to Python']
    f.writelines(lines)

writelines() 方法是用于將字符串列表寫入文件的方法。但是需要注意以下幾點: 

  • writelines() 方法只接受字符串列表作為參數(shù)。如果要寫入單個字符串,請使用 write() 方法。
  • writelines() 方法不會在字符串之間自動添加換行符,需要手動將其添加到字符串中。
  • writelines() 方法不會在列表的最后添加空行,如果需要在最后一行添加空行,請手動添加一個包含換行符的空字符串。
  • 在使用 writelines() 方法時,需要保證傳遞的參數(shù)是一個字符串列表。如果參數(shù)是一個生成器對象,需要將其轉換為列表再傳遞。
lines = ['line 1\n', 'line 2\n', 'line 3\n']
 
with open('example.txt', 'w') as f:
    f.writelines(lines)

方法的高級用法主要是將迭代器對象中的數(shù)據(jù)寫入文件,而不需要將其一次性轉換為列表。這種用法對于大型數(shù)據(jù)集合很有用,因為它可以逐個迭代元素,避免將所有元素存儲在內(nèi)存中。

def generate_lines():
    yield 'line 1\n'
    yield 'line 2\n'
    yield 'line 3\n'
 
with open('example.txt', 'w') as f:
    f.writelines(generate_lines())

在上面的代碼中,generate_lines() 函數(shù)返回一個迭代器對象,它逐個生成字符串。然后,將這個迭代器對象傳遞給 writelines() 方法,writelines() 方法將迭代器對象中的字符串逐個寫入文件。

三、print() 函數(shù)

可以使用 print() 函數(shù)向文件寫入內(nèi)容,需要指定 file 參數(shù)為打開的文件對象。例如:

with open('example.txt', 'w') as f:
    print('Hello, world!', file=f)

以下是 print() 函數(shù)的常用參數(shù)及其詳細介紹:

print() 函數(shù)是 Python 中用于打印輸出信息到終端的內(nèi)置函數(shù)。print() 函數(shù)可以接受多個參數(shù),并將它們打印輸出到終端。

以下是 print() 函數(shù)的常用參數(shù)及其詳細介紹:

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

  • *objects:一個或多個要打印輸出的對象,可以是字符串、數(shù)字、變量等??梢越邮苋我鈹?shù)量的參數(shù)。
  • sep:用于分隔多個參數(shù)的字符,默認是一個空格。在打印輸出多個參數(shù)時,sep 參數(shù)將作為它們之間的分隔符。
  • end:用于表示打印輸出結束的字符,默認是一個換行符。在打印輸出最后一個參數(shù)之后,end 參數(shù)將作為它們之后的字符。
  • file:用于指定輸出的文件對象,默認是標準輸出設備 sys.stdout??梢詫⑤敵鲋囟ㄏ虻轿募?,以便將輸出保存到文件中而不是終端。
  • flush:用于指定是否立即刷新緩沖區(qū),默認為 False。如果將 flush 參數(shù)設置為 True,則輸出將立即寫入文件,而不是等待緩沖區(qū)滿了再寫入。
# 打印輸出單個字符串
print("Hello World")
 
# 打印輸出多個參數(shù)
print("Name:", "John", "Age:", 25)
 
# 使用自定義分隔符
print("Name:", "John", "Age:", 25, sep="-")
 
# 使用自定義結束符
print("Name:", "John", "Age:", 25, end=".")
 
# 將輸出重定向到文件
with open('output.txt', 'w') as f:
    print("Hello World", file=f)
 
# 立即刷新緩沖區(qū)
print("Hello World", flush=True)

print(string, *args, **kwargs)

  • string:格式化字符串,其中包含要打印輸出的信息和格式化占位符。格式化占位符用花括號 {} 包裹,并指定要填充的數(shù)據(jù)的類型、寬度、精度等信息。
  • *args:可選參數(shù),包含要填充到格式化字符串中的數(shù)據(jù)。
  • **kwargs:可選參數(shù),包含鍵值對,用于指定格式化字符串中的占位符的值。
name = "John"
age = 25
 
# 使用占位符輸出字符串
print("Name: {}, Age: {}".format(name, age))
 
# 使用關鍵字參數(shù)輸出字符串
print("Name: {n}, Age: {a}".format(n=name, a=age))
 
# 使用 f-string 輸出字符串
print(f"Name: {name}, Age: {age}")

四、使用 csv 模塊

可以使用 csv 模塊將數(shù)據(jù)寫入 CSV 文件。例如:

import csv
 
with open('example.csv', 'w', newline='') as f:
    writer = csv.writer(f)
    writer.writerow(['Name', 'Age', 'Gender'])
    writer.writerow(['Alice', 25, 'F'])
    writer.writerow(['Bob', 30, 'M'])

五、使用 json 模塊

可以使用 json 模塊將 Python 對象寫入 JSON 文件。例如:

import json
 
data = {
    'name': 'Alice',
    'age': 25,
    'gender': 'F'
}
 
with open('example.json', 'w') as f:
    json.dump(data, f)

到此這篇關于Python實現(xiàn)將內(nèi)容寫入文件的五種方法總結的文章就介紹到這了,更多相關Python內(nèi)容寫入文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 6個實用的Python自動化腳本詳解

    6個實用的Python自動化腳本詳解

    每天你都可能會執(zhí)行許多重復的任務,例如閱讀 pdf、播放音樂、查看天氣、打開書簽、清理文件夾等等,使用自動化腳本,就無需手動一次又一次地完成這些任務,非常方便。快跟隨小編一起試一試吧
    2022-01-01
  • python實現(xiàn)倒計時的示例

    python實現(xiàn)倒計時的示例

    這篇文章主要介紹了python實現(xiàn)的倒計時的示例,需要的朋友可以參考下
    2014-02-02
  • Django項目創(chuàng)建的圖文教程

    Django項目創(chuàng)建的圖文教程

    本文主要介紹了Django項目創(chuàng)建的圖文教程,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • Android Q之氣泡彈窗的實現(xiàn)示例

    Android Q之氣泡彈窗的實現(xiàn)示例

    這篇文章主要介紹了Android Q之氣泡彈窗的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-06-06
  • Python+Kivy編寫一個乒乓球游戲

    Python+Kivy編寫一個乒乓球游戲

    Kivy 是用 Python 和 Cython 編寫的,基于 OpenGL ES 2,支持各種輸入設備并擁有豐富的部件庫。本文將教你如何使用 Kivy 編寫一款乒乓球游戲,感興趣的可以動手試一試
    2022-05-05
  • Python循環(huán)語句之break與continue的用法

    Python循環(huán)語句之break與continue的用法

    這篇文章主要介紹了Python循環(huán)語句之break與continue的用法,是Python入門學習中的基礎知識,需要的朋友可以參考下
    2015-10-10
  • tensorflow 實現(xiàn)數(shù)據(jù)類型轉換

    tensorflow 實現(xiàn)數(shù)據(jù)類型轉換

    今天小編就為大家分享一篇tensorflow 實現(xiàn)數(shù)據(jù)類型轉換,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • python求解漢諾塔游戲

    python求解漢諾塔游戲

    這篇文章主要為大家詳細介紹了python求解漢諾塔游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • pytorch教程網(wǎng)絡和損失函數(shù)的可視化代碼示例

    pytorch教程網(wǎng)絡和損失函數(shù)的可視化代碼示例

    這篇文章主要介紹了pytorch教程中網(wǎng)絡和損失函數(shù)的可視化,文中附含詳細的代碼示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-09-09
  • matlab中imadjust函數(shù)的作用及應用舉例

    matlab中imadjust函數(shù)的作用及應用舉例

    這篇文章主要介紹了matlab中imadjust函數(shù)的作用及應用舉例,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02

最新評論