文件的操作

萬惡之源,文件操作:
1,文件操作的函數:
open(文件名(路徑),mode="?",encoding="字符集")

2,模式:r讀,w寫,a追加.r+讀寫,w+讀寫,r+b讀取非文本文件,比如圖片.

3,常用的操作
    1.光標(seek)*
        seek(0)開頭
        seek(0,2)結尾
    2,tell()打印光標所在位置
    3,truncate 截取文件
    4,修改文件
        1,引入os模塊
        2,打開目標文件,r
        3,打開文件副本,w
        4.從r中讀取內容進行修改,寫入到副本中
        5.刪除源文件
        6,重命名副本

4.文件替換和改名應用,把"alex昨天干嘛去了"的內容進行修改,改爲燒餅,"alex昨天干嘛去了_副本"改名爲"alex昨天干嘛去了"

import os #引入os模塊
with open("alex昨天干嘛去了",mode="r",encoding="utf-8")as f1,\
    open("alex昨天干嘛去了_副本",mode="w",encoding="utf-8") as f2:
    for line in f1:
        line = line.replace("alex","sb")
        f2.write(line)
os.remove("alex昨天干嘛去了") #刪除之前的老文件
os.rename("alex昨天干嘛去了_副本","alex昨天干嘛去了")#給新文件改名
time.sleep(3)#主程序睡着三秒。看到刪效果

5.讀取計算機g盤圖片123複製到計算機e盤

f = open("g:/123.jpg",mode="rb")#讀取計算機g盤圖片123.jpg
e = open("e:/123.jgp",mode="wb")#寫入到計算機e盤圖片123.jpg
for line in f:
    e.write(line)
f.close()
e.flush()
e.close()

 python3 文件讀寫操作

 1.  文件打開模式

 

2. 文件操作方法

 

 

文件讀寫與字符編碼

 

 

 python文件操作步驟示例

  以讀取爲例,這樣一個文件:text.txt,  該文件的字符編碼爲 utf-8

1

2

3

4

5

總有一天總有一年會發現

有人默默的陪在你的身邊

也許 我不該在你的世界

當你收到情書

也代表我已經走遠

 

1. 基本實現

1

2

3

= open('text.txt''r', encoding='utf-8')

print(f.read())

f.close()

 

2. 中級實現

在基本實現的的基礎上,可能要考慮到一些可能出現的意外因素。因爲文件讀寫時都有可能產生IO錯誤(IOError),一旦出錯,後面包括 f.close() 在內的所有代碼都不會執行了,因此我們要保證文件無論如何都應該關閉。

1

2

3

4

5

6

7

= ''  # 全局要申明下 f 變量,不然 f.close() 會報黃

try:

    = open('text.txt''r', encoding='utf-8')

    print(f.read())

finally:

    if f:

        f.close()

 在上面的代碼中,就是 try 中的代碼出現了報錯,依然會執行 finally 中的代碼,即文件關閉操作被執行。

 

3. 最佳實踐

爲了避免忘記或者爲了避免每次都要手動關閉文件,且過多的代碼量,我們可以使用 with 語句,with 語句會在其代碼塊執行完畢之後自動關閉文件。

1

2

3

4

5

6

7

8

9

10

11

with open('text.txt''r', encoding='utf-8') as f:

    print(f.read())

print(f.closed) # 通過 closed 獲取文件是否關閉,True關閉,False未關閉

 

# 執行結果:

# 總有一天總有一年會發現

# 有人默默的陪在你的身邊

# 也許 我不該在你的世界

# 當你收到情書

# 也代表我已經走遠

# True

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章