樂趣Python——文件與數(shù)據(jù):揮別亂糟糟的桌面

各位朋友們常潮,今天我們要開啟一場非凡的冒險——進入文件操作的世界斥黑!你知道嗎揖盘,在你的電腦里,有一個叫做“文件系統(tǒng)”的迷宮锌奴,里面藏著各種各樣的文件和文件夾兽狭,它們就像是迷宮中的寶藏。但有時候鹿蜀,這些寶藏會變得亂糟糟的箕慧,找起東西來就像是在玩一場沒完沒了的捉迷藏。不過不用擔(dān)心茴恰,Python將成為你的秩序守護神颠焦,一鍵就能讓你的桌面恢復(fù)寧靜與秩序。讓我們一起來學(xué)習(xí)如何成為這個神奇世界的主人吧往枣!

文件操作:秩序伐庭,從這里開始

"告別那堆亂糟糟的文件,Python將成為你的秩序守護神分冈,一鍵讓桌面恢復(fù)寧靜與秩序圾另。"

文件操作的理論與定義

想象一下,你的電腦是一個巨大的圖書館雕沉,而文件就是圖書館里的書籍集乔。我們可以閱讀書籍(讀取文件),可以把新買的書放進圖書館(創(chuàng)建和寫入文件)坡椒,還可以把不喜歡的書扔掉(刪除文件)扰路,甚至可以給書換一個位置(移動和重命名文件)。Python在這個圖書館里就像是一個無所不能的圖書管理員肠牲,可以幫你做所有這些事情幼衰。

文件是存儲在計算機上的一組相關(guān)數(shù)據(jù)的集合。
文件操作是對這些文件進行管理和處理的一系列操作缀雳。

在Python中渡嚣,我們可以使用內(nèi)置的文件操作函數(shù)來進行文件操作。文件操作是處理計算機文件的過程,它可以讓我們對文件進行創(chuàng)建识椰、寫入绝葡、讀取和刪除等操作,從而幫助我們在計算機上管理和處理數(shù)據(jù)腹鹉。

文件操作有幾個常用的函數(shù)藏畅,包括:

  1. open():打開文件并返回文件對象。
  2. close():關(guān)閉文件功咒。
  3. read():讀取文件中的內(nèi)容愉阎。
  4. write():將數(shù)據(jù)寫入文件。
  5. seek():移動文件指針到指定位置力奋。
  6. tell():返回文件指針的當(dāng)前位置榜旦。
  7. exists():檢查文件是否存在。
  8. remove():刪除文件景殷。
  9. rename():重命名文件或移動文件溅呢。
  10. mkdir():創(chuàng)建文件夾。
  11. rmdir():刪除文件夾猿挚。

這些函數(shù)是 Python 中常用的文件操作函數(shù)咐旧,可以完成對文件的創(chuàng)建、寫入绩蜻、讀取铣墨、刪除、重命名辜羊、移動以及對文件夾的創(chuàng)建和刪除等操作踏兜。使用這些函數(shù)可以方便地進行文件和文件夾的管理和處理。下面提供一些常用的函數(shù)來幫助你更好地理解這些操作八秃。

創(chuàng)建和寫入文件

首先碱妆,我們來學(xué)習(xí)如何在這個圖書館里添加新書籍。我們用Python寫一本書吧昔驱!

with open("我的第一本書.txt", "w") as file:
    file.write("這是我用Python寫的第一行文字疹尾!\n")
    file.write("Python真是太神奇了!")

這段代碼使用了 with open() 語句來打開文件并寫入內(nèi)容骤肛。讓我逐行解釋每個部分的作用:

  • with open("我的第一本書.txt", "w") as file:

    • with open() 語句用于打開文件纳本,并在代碼塊結(jié)束后自動關(guān)閉文件。
    • "我的第一本書.txt" 是要打開的文件名腋颠。你可以根據(jù)實際情況替換為你想要的文件名繁成。
    • "w" 是打開文件的模式,代表寫入模式淑玫。這意味著我們可以向文件中寫入內(nèi)容巾腕。
    • as file 將文件對象賦值給變量 file面睛,以便后續(xù)對文件的操作。
  • file.write("這是我用Python寫的第一行文字尊搬!\n")

    • write() 方法用于向文件中寫入指定的字符串叁鉴。
    • 在這行代碼中,我們將字符串 "這是我用Python寫的第一行文字佛寿!" 寫入文件幌墓。
    • "\n" 是一個換行符,用于在文本中創(chuàng)建新的一行冀泻,以使得兩行文字分別處于不同的行常侣。
  • file.write("Python真是太神奇了!")

    • 這行代碼將字符串 "Python真是太神奇了腔长!" 寫入文件的下一行袭祟。
    • 由于我們在上一行通過 write() 寫入了一個換行符,這行代碼將在文件中創(chuàng)建一個新的文本行捞附。

通過這段代碼,我們使用 with open() 語句打開了一個名為 "我的第一本書.txt" 的文件您没,并以寫入模式打開鸟召。然后,我們使用 write() 方法向文件中寫入兩行字符串內(nèi)容氨鹏。

最后欧募,當(dāng)程序退出 with 代碼塊時,文件會自動關(guān)閉仆抵,無需手動調(diào)用 file.close() 方法跟继。

另一個簡單示例:

file = open("file.txt", "w")
file.write("這是一個示例文件。\n")
file.write("Hello, World!\n")
file.close()

這段代碼用于創(chuàng)建一個名為 "file.txt" 的文件镣丑,并向其中寫入兩行文本內(nèi)容舔糖。讓我逐行解釋代碼的作用:

  • file = open("file.txt", "w")
    • 這行代碼打開一個名為 "file.txt" 的文件,使用寫入模式("w") 進行打開莺匠。
    • 打開文件后金吗,將返回一個文件對象,并將其賦值給變量 file趣竣,以便后續(xù)對文件對象進行操作摇庙。
  • file.write("這是一個示例文件。\n")
    • 這行代碼使用 write() 方法將字符串 "這是一個示例文件遥缕。" 寫入文件卫袒。
    • "\n" 是一個特殊的轉(zhuǎn)義序列,代表換行符单匣,用于在文本中創(chuàng)建新的一行夕凝。
  • file.write("Hello, World!\n")
    • 這行代碼使用 write() 方法將字符串 "Hello, World!" 寫入文件的下一行宝穗。
    • 同樣,我們使用 "\n" 添加一個換行符迹冤,以使得寫入的內(nèi)容在兩行上讽营。
  • file.close()
    • 這行代碼使用 close() 方法關(guān)閉文件,確保文件被正確地保存和釋放泡徙。

通過上述代碼橱鹏,我們創(chuàng)建了一個名為 "file.txt" 的文件,并以寫入模式打開堪藐。然后莉兰,我們使用 write() 方法連續(xù)兩次向文件中寫入字符串。最后礁竞,通過 close() 方法關(guān)閉文件糖荒,確保對文件的修改被保存起來。

請注意模捂,在進行文件操作后捶朵,最好始終手動關(guān)閉文件,以確保數(shù)據(jù)的完整性和安全性狂男。另外综看,你也可以使用 with open() 語句來自動處理文件的打開和關(guān)閉,以簡化代碼岖食。

讀取文件

書寫好了红碑,接下來就是閱讀我們的杰作。讓我們用Python翻開這本書泡垃,看看里面寫了些什么吧析珊!

這段代碼用于打開一個名為 "我的第一本書.txt" 的文件,并將文件中的內(nèi)容讀取到變量 content 中蔑穴,然后將其打印出來忠寻。讓我逐行解釋代碼的作用:

with open("我的第一本書.txt", "r") as file:
    content = file.read()
    print(content)
  • with open("我的第一本書.txt", "r") as file:
    • 這行代碼使用 with open() 語句打開一個名為 "我的第一本書.txt" 的文件,并以只讀模式("r")進行打開澎剥。
    • 打開文件后锡溯,將返回一個文件對象,并將其賦值給變量 file哑姚,以便后續(xù)對文件對象進行操作祭饭。
    • as file 將文件對象賦值給變量 file
  • content = file.read()
    • 這行代碼使用 read() 方法讀取文件中的所有內(nèi)容叙量,并將其保存在變量 content 中倡蝙。
  • print(content)
    • 這行代碼將變量 content 中的內(nèi)容打印到控制臺。

通過這段代碼绞佩,我們使用 with open() 語句打開了一個名為 "我的第一本書.txt" 的文件寺鸥,并以只讀模式打開猪钮。然后,使用 read() 方法讀取文件中的所有內(nèi)容胆建,并將其存儲在變量 content 中烤低。最后,通過 print() 函數(shù)將文件內(nèi)容打印到控制臺笆载。

這是一個簡單的示例扑馁,演示了如何使用 Python 打開文件并讀取其中的內(nèi)容。你可以根據(jù)自己的需求修改文件名凉驻,并對讀取的內(nèi)容進行進一步處理或輸出腻要。

刪除文件

如果我們的書寫錯了,或者我們不再需要這本書了涝登,我們可以把它從圖書館中刪除雄家。但要小心,刪除后就找不回來了哦胀滚!

下面這段代碼使用了 Python 的 os 模塊來檢查是否存在名為 "我的第一本書.txt" 的文件趟济,如果存在則刪除該文件,并打印相應(yīng)的消息咽笼。如果文件不存在咙好,則打印另一條消息。讓我逐行解釋代碼的作用:

import os

if os.path.exists("我的第一本書.txt"):
    os.remove("我的第一本書.txt")
    print("文件已成功刪除褐荷!")
else:
    print("文件不存在!")
  • import os
    • 這行代碼導(dǎo)入了 Python 的 os 模塊嘹悼,使我們可以使用其中的文件和目錄操作函數(shù)叛甫。
  • if os.path.exists("我的第一本書.txt"):
    • 這行代碼使用 os.path.exists() 函數(shù)檢查是否存在名為 "我的第一本書.txt" 的文件。
  • os.remove("我的第一本書.txt")
    • 這行代碼調(diào)用了 os.remove() 函數(shù)來刪除名為 "我的第一本書.txt" 的文件杨伙。
  • print("文件已成功刪除其监!")
    • 如果文件存在且成功刪除,則打印 "文件已成功刪除限匣!" 的消息抖苦。
  • print("文件不存在!")
    • 如果文件不存在米死,則打印 "文件不存在锌历!" 的消息。

通過這段代碼峦筒,我們首先導(dǎo)入了 os 模塊究西。然后,使用 os.path.exists() 函數(shù)檢查是否存在名為 "我的第一本書.txt" 的文件物喷。如果文件存在卤材,則調(diào)用 os.remove() 函數(shù)刪除該文件遮斥,并打印 "文件已成功刪除!" 的消息扇丛。如果文件不存在术吗,則打印 "文件不存在!" 的消息帆精。

這樣的代碼結(jié)構(gòu)可以避免刪除文件時出現(xiàn)異常较屿,因為我們首先檢查文件是否存在。這是一個常見的文件操作技巧实幕,以確保我們只刪除確實存在的文件吝镣。

移動和重命名文件

有時候,我們可能會想給書換一個位置昆庇,或者改一個更好聽的名字末贾。Python同樣可以輕松幫你實現(xiàn)這個愿望。

這段代碼使用了 Python 的 os 模塊來檢查是否存在名為 "我的第一本書.txt" 的文件整吆,如果存在則將該文件移動或重命名為 "我的第二本書.txt"拱撵,并打印相應(yīng)的消息。如果文件不存在表蝙,則打印另一條消息拴测。讓我逐行解釋代碼的作用:

import os

if os.path.exists("我的第一本書.txt"):
    os.rename("我的第一本書.txt", "我的第二本書.txt")
    print("文件已成功移動或重命名!")
else:
    print("文件不存在府蛇!")
  • import os
    • 這行代碼導(dǎo)入了 Python 的 os 模塊集索,使我們可以使用其中的文件和目錄操作函數(shù)。
  • if os.path.exists("我的第一本書.txt"):
    • 這行代碼使用 os.path.exists() 函數(shù)檢查是否存在名為 "我的第一本書.txt" 的文件汇跨。
  • os.rename("我的第一本書.txt", "我的第二本書.txt")
    • 這行代碼調(diào)用了 os.rename() 函數(shù)將名為 "我的第一本書.txt" 的文件移動或重命名為 "我的第二本書.txt"务荆。
  • print("文件已成功移動或重命名!")
    • 如果文件存在且成功移動或重命名穷遂,則打印 "文件已成功移動或重命名函匕!" 的消息。
  • print("文件不存在蚪黑!")
    • 如果文件不存在盅惜,則打印 "文件不存在!" 的消息忌穿。

通過這段代碼抒寂,我們首先導(dǎo)入了 os 模塊。然后伴网,使用 os.path.exists() 函數(shù)檢查是否存在名為 "我的第一本書.txt" 的文件蓬推。如果文件存在,則調(diào)用 os.rename() 函數(shù)將文件移動或重命名為 "我的第二本書.txt"澡腾。最后沸伏,打印相應(yīng)的消息糕珊,如果成功移動或重命名文件則打印 "文件已成功移動或重命名!"毅糟,如果文件不存在則打印 "文件不存在红选!"。

創(chuàng)建和刪除文件夾

最后姆另,我們的書太多了喇肋,我們需要一些書架(文件夾)來整理它們。讓我們用Python來建造一些書架吧迹辐!

import os

os.mkdir("我的Python書架")
os.rename("我的第一本Python書.txt", "我的Python書架/我的第一本Python書.txt")

# 刪除文件夾蝶防,需要先刪除文件夾中的文件,然后再刪除文件夾明吩。
os.rmdir("我的Python書架")

上面這段代碼使用了 Python 的 os 模塊來創(chuàng)建文件夾间学、將文件移動到文件夾中,并刪除文件夾印荔。讓我逐行解釋代碼的作用:

import os

os.mkdir("我的Python書架")
  • import os

    • 這行代碼導(dǎo)入了 Python 的 os 模塊低葫,使我們可以使用其中的文件和目錄操作函數(shù)。
  • os.mkdir("我的Python書架")

    • 這行代碼使用 os.mkdir() 函數(shù)創(chuàng)建一個名為 "我的Python書架" 的文件夾仍律。
  • os.rename("我的第一本Python書.txt", "我的Python書架/我的第一本Python書.txt")

    • 這行代碼使用 os.rename() 函數(shù)將名為 "我的第一本Python書.txt" 的文件移動到 "我的Python書架" 文件夾中嘿悬,并將其重命名為 "我的第一本Python書.txt"。
  • os.rmdir("我的Python書架")

    • 這行代碼使用 os.rmdir() 函數(shù)刪除 "我的Python書架" 文件夾水泉。請注意善涨,os.rmdir() 函數(shù)只能刪除空文件夾。如果文件夾中存在文件或其他子文件夾草则,則刪除操作將會失敗躯概。

所以在這段代碼中,首先使用 os.mkdir() 函數(shù)創(chuàng)建了一個名為 "我的Python書架" 的文件夾畔师。然后使用 os.rename() 函數(shù)將文件 "我的第一本Python書.txt" 移動到該文件夾中,并重命名為 "我的第一本Python書.txt"牧牢。最后看锉,使用 os.rmdir() 函數(shù)刪除了 "我的Python書架" 文件夾。

請確保在使用 os.rmdir() 函數(shù)刪除文件夾之前塔鳍,該文件夾是空的伯铣。如果文件夾中存在文件或其他子文件夾,刪除操作將會失敗轮纫。

遍歷文件夾處理文件

當(dāng)遍歷文件夾中的文件時腔寡,你可以使用 os.listdir() 函數(shù)來獲取文件夾中的所有文件和子文件夾的名稱列表。然后掌唾,你可以使用 os.path.join() 函數(shù)將文件夾路徑和文件名組合起來放前,得到文件的完整路徑忿磅。接下來,你可以根據(jù)需要對文件進行處理凭语。

以下是一個示例葱她,演示了如何遍歷文件夾中的文件并對每個文件進行處理:

import os

folder_path = '文件夾路徑'

# 遍歷文件夾中的文件
for filename in os.listdir(folder_path):
    file_path = os.path.join(folder_path, filename)
    
    # 檢查文件是否是普通文件
    if os.path.isfile(file_path):
        # 在這里對文件進行處理,例如打印文件路徑或進行其他操作
        print(file_path)

在示例中似扔,我們使用了 os.listdir() 函數(shù)來獲取文件夾中的所有文件和子文件夾的名稱列表吨些。然后,使用 os.path.join() 函數(shù)將文件夾路徑和文件名拼接起來炒辉,得到完整的文件路徑豪墅。接下來,我們使用 os.path.isfile() 函數(shù)檢查文件路徑是否對應(yīng)一個普通文件黔寇,以避免處理子文件夾偶器。

你可以根據(jù)需要在注釋的位置上添加你具體的處理邏輯,例如對文件進行重命名啡氢、復(fù)制状囱、刪除等操作。注意倘是,對文件進行處理時亭枷,請小心操作,確保文件操作符合你的需求搀崭,也確保你不會意外刪除或修改重要的文件叨粘。

朋友們,看到了嗎瘤睹?有了Python升敲,管理你的電腦文件就像玩樂高一樣簡單有趣。你可以創(chuàng)造轰传、閱讀驴党、整理,甚至是刪除文件和文件夾获茬。從今天開始港庄,讓我們一起用Python帶來秩序,讓你的電腦桌面恢復(fù)寧靜與秩序吧恕曲!記住鹏氧,無論你想做什么,Python都是你最好的伙伴佩谣。下次見啦把还,未來的文件操作大師們!

本文由博客一文多發(fā)平臺 OpenWrite 發(fā)布!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末吊履,一起剝皮案震驚了整個濱河市安皱,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌率翅,老刑警劉巖练俐,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異冕臭,居然都是意外死亡腺晾,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進店門辜贵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來悯蝉,“玉大人,你說我怎么就攤上這事托慨”怯桑” “怎么了?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵厚棵,是天一觀的道長蕉世。 經(jīng)常有香客問我,道長婆硬,這世上最難降的妖魔是什么狠轻? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮彬犯,結(jié)果婚禮上向楼,老公的妹妹穿的比我還像新娘。我一直安慰自己谐区,他們只是感情好湖蜕,可當(dāng)我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著宋列,像睡著了一般昭抒。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上炼杖,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天戈鲁,我揣著相機與錄音,去河邊找鬼嘹叫。 笑死,一個胖子當(dāng)著我的面吹牛诈乒,可吹牛的內(nèi)容都是我干的罩扇。 我是一名探鬼主播,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼喂饥!你這毒婦竟也來了消约?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤员帮,失蹤者是張志新(化名)和其女友劉穎或粮,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體捞高,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡氯材,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了硝岗。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片氢哮。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖型檀,靈堂內(nèi)的尸體忽然破棺而出冗尤,到底是詐尸還是另有隱情,我是刑警寧澤胀溺,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布裂七,位于F島的核電站,受9級特大地震影響仓坞,放射性物質(zhì)發(fā)生泄漏背零。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一扯躺、第九天 我趴在偏房一處隱蔽的房頂上張望捉兴。 院中可真熱鬧,春花似錦录语、人聲如沸倍啥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽虽缕。三九已至,卻和暖如春蒲稳,著一層夾襖步出監(jiān)牢的瞬間氮趋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工江耀, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留剩胁,地道東北人。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓祥国,卻偏偏與公主長得像昵观,于是被迫代替她去往敵國和親晾腔。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,685評論 2 360

推薦閱讀更多精彩內(nèi)容