在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

python創建文件對象

麥辣雞腿堡 ? 來源:Python都知道 ? 作者:Python都知道 ? 2023-06-21 17:19 ? 次閱讀

2.1.

創建文件對象

**open()

函數用于創建文件對象,基本語法格式如下:** open(文件名[,打開方式])

注意:

  • 如果只是文件名,代表在當前目錄下的文件.

    文件名可以錄入全路徑,比如:D:\\a\\b.txt 可以使用原始字符串 r“d:\\b.txt” 減少 \\ 的輸入 ,

    因此以上代碼可改寫成 f = open(r"d:\\b.txt","w")

  • 作為入參的打開方式如下(經常會用!!!)圖片

  • 文本文件對象和二進制文件對象的創建如果是二進制模式

    b ,則創建的是二進制文件對象,處理的基本單元是“字節” 如果沒有增加模式 b

    ,則默認創建的是文本文件對象,處理的基本單元是“字符”

2.2.

文件的寫入

文本文件的寫入一般就是三個步驟:

  • 創建文件對象
  • 寫入數據
  • 關閉文件對象

基本文件的寫入操作

實操代碼

# 1.使用open()方式
f = open(r"d:\\a.txt", "a")
s = "TimePause\\n時間靜止\\n"
f.write(s)
f.close()

結果展示

圖片

中文亂碼

代碼編寫時

windows

操作系統默認的編碼是 GBK , Linux 操作系統默認的編碼是 UTF- 8 .**當我們用

open() 時,調用的是操作系統相關api來打開的文件,并且默認的編碼是 GBK 但是由于我們通常習慣將所有代碼編碼都設置成 UTF- 8 .,

因此在打開時會出現亂碼問題, 如下圖所示**

圖片解決方案: 按照上圖提示,

將文本編碼設置成 GBK格式讀取即可圖片注意: 我們還可以通過指定編碼來解決中文亂碼問題.

因為我們將pycharm文本讀寫編碼都設置成

utf-8, 因此只要 **我們在文件寫入的時候規定編碼為

utf-8(默認gbk)** , 那么我們在讀取時就不會出現亂碼. 如下代碼

實操代碼

# 【示例】通過指定文件編碼解決中文亂碼問題
f = open(r"d:\\bb.txt", "w", encoding="utf-8")
f.write("一個有溫情的小站\\n時間靜止不是簡史")
f.close()

控制臺輸出時****問題描述

我們一般習慣把pycharm所有字符編碼設置成utf-8時.

在我們進行網絡請求時, 有時候會返回亂碼問題, 如下圖

圖片

圖片

問題分析

因為我們在

pycharm 設置所有字符編碼均為 UTF-8, 但是**通過網絡請求得到GBK格式的文本,

然后我們仍以 UTF-8 編碼去解碼就會出現亂碼**

解決方案

可以將項目編碼設置成GBK格式即可;

也可以通過文本操作代碼對得到的數據進行GBK格式讀取 亦或者在寫入時, 直接將編碼聲明為UTF-8

圖片圖片

write()/writelines()寫入數據

  • write(a) :把字符串

    a 寫入到文件中

  • writelines(b) :把字符串列表寫入文件中,不添加換行符

實操代碼

# 【操作】添加字符串列表數據到文件中
f = open(r"d:\\bb.txt", 'w', encoding="utf-8")
s = ["什么鬼\\n"] * 3  # 通過 \\n實現手動換行
f.writelines(s)
f.close()

close()關閉文件流

由于文件底層是由操作系統控制,所以我們打開的文件對象必須顯式調用

close() 方法關閉文件對象. 當調用 close() 方法時,首先會把緩沖區數據寫入文件(也可以直接調用 flush()

方法),再關閉文件,釋放文件對象

注意:

  • close()一般結合異常機制的

    finally 一起使用

  • 也可以**通過

    with 關鍵字實現無論何種情況都能關閉打開的文件對象(推薦)**

實操代碼

# 【操作】結合異常機制的 finally ,確保關閉文件對象
# "a" 設置打開方式為追加模式
try:
    f = open(r"d:\\c.txt", "a")
    s = "來自深淵"
    f.write(s)
except BaseException as e:
    print(e)
finally:
    f.close()

with語句(上下文管理器)

with關鍵字

(上下文管理器)可以自動管理上下文資源,不論什么原因跳出 with塊 ,都能確保文件正確的關閉,

并且可以在代碼塊執行完畢后自動還原進入該代碼塊時的現場

實操代碼

# 【操作】使用 with 管理文件寫入操作
s = ["齊格飛"] * 3
with open(r"d:\\cc.txt", "w") as f:
    f.writelines(s)
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 函數
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    63012
  • python
    +關注

    關注

    56

    文章

    4810

    瀏覽量

    85074
收藏 人收藏

    評論

    相關推薦

    《Visual C# 2008程序設計經典案例設計與實現》---動態創建文件并輸入文件內容

    《Visual C# 2008程序設計經典案例設計與實現》---動態創建文件并輸入文件內容.zip
    發表于 07-08 13:27

    labview中在創建文件函數時出現 memory is full 的問題

    `labview中在創建文件函數時出現 memory is full 的問題,這個問題是不是由于沒有加入關閉文件函數引起的呢`
    發表于 12-25 14:12

    請問FATFS創建文件夾時如何添加創建時間?

    如題!通過實現get_fattime函數,創建文件時是可以添加“創建時間”的,但是創建文件夾時卻不能,請各位幫忙,謝謝!另外,f_utime添加的是“修改時間”
    發表于 12-13 08:44

    Hive的創建文件數限制的解決方法

    解決Hive創建文件數過多的問題
    發表于 04-29 11:12

    怎么在SD卡里面創建文件

    如何在SD卡里面創建文件啊,不完全手冊那個試驗說了這個嗎
    發表于 09-23 04:05

    如何設置一個路徑創建文件并寫入數據?

    你好,我使用的procmodule接收超聲波傳感器的數據并通過串口通信的終端顯示。我的問題是,可以對存儲在文件terminalbe接收數據(.txt。docx格式)??文件處理系統是否支持PROC?如果是,如何設置一個路徑創建文件
    發表于 11-06 09:23

    DFS創建文件失敗是為什么

    需要創建文件 static uint8_t Creatdir = 1;//用來表示是否需要創建文件夾 static int fd = 0; int res_sync; int res_write
    發表于 04-12 10:06

    為什么用DFS創建文件會失敗呢?

    ;//用來表示是否需要創建文件static uint8_t Creatdir = 1;//用來表示是否需要創建文件夾static int fd = 0;int res_sync;int res_write
    發表于 01-11 14:25

    dos命令怎么用_DOS下創建文件文件

    DOS命令,計算機術語,是指DOS操作系統的命令,是一種面向磁盤的操作命令,主要包括目錄操作類命令、磁盤操作類命令、文件操作類命令和其它命令。本文將詳細講解dos命令怎么用以及DOS下怎么創建文件文件夾。
    發表于 01-17 16:15 ?5.6w次閱讀
    dos命令怎么用_DOS下<b class='flag-5'>創建文件</b>、<b class='flag-5'>文件</b>夾

    如何使用WEBENCH?電源系統創建文檔?

    使用WEBENCH?Power Designer創建文
    的頭像 發表于 08-20 00:03 ?1760次閱讀

    在Linux中如何創建文件

    使用cat創建文件時,以系統默認的文件屬性作為新文件的屬性,并接受鍵盤輸入作為文件的內容。輸入結束時按Ctrl+d退出并保存文件
    發表于 05-31 09:23 ?6416次閱讀
    在Linux中如何<b class='flag-5'>創建文件</b>

    干貨:總結Java中創建文件的五種最佳實踐方法(附源碼)

    在java中有很多的方法可以創建文件文件,你是否真的認真的總結過?下面筆者就幫大家總結一下java中創建文件的五種方法。
    的頭像 發表于 08-28 11:29 ?6943次閱讀
    干貨:總結Java中<b class='flag-5'>創建文件</b>的五種最佳實踐方法(附源碼)

    淺析python模塊創建和from及import使用

    python模塊通過用python程序編寫的.py文件即可創建,通過from及import語句導入模塊來使用。
    的頭像 發表于 02-21 14:44 ?905次閱讀

    介紹Python文件創建與寫入的基本方法

    Python 文件寫入和創建Python 開發中必須掌握的技能之一。在本文中,我們將介紹 Python
    的頭像 發表于 04-27 09:22 ?3400次閱讀

    如何用Python轉移文件至云對象存儲

    對象存儲(Cloud Object Storage,COS)是一種存儲海量文件的分布式存儲服務,具有高擴展性、低成本、可靠安全等優點。 對象存儲有什么用呢?對于站長而言,比如Python
    的頭像 發表于 10-31 10:22 ?550次閱讀
    如何用<b class='flag-5'>Python</b>轉移<b class='flag-5'>文件</b>至云<b class='flag-5'>對象</b>存儲
    主站蜘蛛池模板: 国产精品免费久久久久影院 | 日本不卡在线一区二区三区视频 | 欧美色欧美亚洲高清在线视频 | 免费观看黄网站 | 天天射日 | 欧美成人激情在线 | 国内露脸夫妇交换精品 | 色偷偷狠狠色综合网 | 小雪被老外黑人撑破了视频 | 成人午夜免费视频毛片 | 人人做人人爽久久久精品 | 免费一日本一级裸片在线观看 | 五月丁五月丁开行停停乱 | 理论片免费午夜 | 亚洲狠狠网站色噜噜 | 黄 色 大 片 网站 | 性夜影院爽黄e爽在线观看 羞羞色院91精品网站 | 亚洲插 | 国产女人和拘做受视频免费 | 性香港xxxxx免费视频播放 | 波多野结衣在线视频免费观看 | 欧美黑人性xxx猛交 欧美黑人性受xxxx精品 | 久久青青成人亚洲精品 | 精品国产综合区久久久久99 | 久久99久久99精品免观看 | 亚洲一区二区三区免费看 | 狼狼狼色精品视频在线播放 | 久久色婷婷 | 国产精品视频色拍拍 | 午夜五月天| 亚洲午夜在线视频 | 日本黄视频在线观看 | 日本在线一本 | 久久免费精品高清麻豆 | 成年看片免费高清观看 | 欧美婷婷六月丁香综合色 | 伊人97| 在线观看色视频网站 | 手机看片福利1024 | 日韩精品三级 | 中文天堂 |