小白學python-day08-檔案及其操作、字串字典型別轉換
今天是day08,以下是學習總結:
但行努力,莫問前程。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
with語句:為防止開啟檔案之後忘記寫f.close()
這種方式在退出with級別的時候就自動關閉檔案,就不用寫f.close()
with同時管理多個檔案物件:(對應下文的 修改檔案內容 部分)
同樣,在退出with級別的時候就自動關閉檔案,就不用寫f.close()
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
讀模式:
寫模式:
append 追加
模式:
r+模式:讀正常讀,寫永遠在檔案內容最後寫。
w+模式:可寫可讀,但在開啟的時候就已經清空,寫入之後游標在末尾位置,直接繼續讀的話是沒有內容的,所以在讀之前,需要f.seek(0)
a+模式:與r+模式一樣,可寫可讀,但是游標是在最後位置,r+是游標在第一個位置。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
其他系列的操作模式:
1.readlines() 方法用於讀取所有行,沒有引數,該列表可以由 Python 的 for迴圈進行遍歷處理。
run:
2.tell() 方法
tell() 方法返回檔案的當前位置,即檔案指標當前位置。
英文就是一個字元游標顯示1
中文不是。
3.seek() 方法
seek() 方法用於移動檔案讀取指標到指定位置。
4.flush() 方法:可以做進度條
flush() 方法是用來重新整理緩衝區的,即將緩衝區中的資料立刻寫入檔案,同時清空緩衝區,不需要是被動的等待輸出緩衝區寫入。
一般情況下,檔案關閉後會自動重新整理緩衝區,但有時你需要在關閉前重新整理它,這時就可以使用 flush() 方法。
格式:檔案.flush()
*打印出來的是一個一個出來的,即0.1秒出來一個,一共出來30個
5.truncate() 方法
truncate在使用時 開啟檔案必須為 w 或者 a 模式。因為截斷相當於寫東西。但注意w模式在開始時會格式化原檔案的內容。
引數為 size,無 size 表示從當前位置截斷;截斷之後 V游標後面的所有位元組被刪除,其中 Widnows 系統下的換行代表2個位元組大小。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
修改檔案內容:
文字2就是我們修改後的結果:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
If else的語句優化 示例:
優化後:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
字典轉字串 str()
字串轉字典 eval