Python技能樹每日一練——文件操作
文件操作
1. 打開文件
1.1 文件路徑
1.1.1 相對路徑
1.1.2 絕對路徑
1.2 模式
2. 創(chuàng)建文件
3. 讀取文件
3.1 讀取所有文件
3.2 讀取指定字符
3.3 讀取指定行
3.4 遍歷文件
3.5 關(guān)閉文件
4. 修改文件
5. 刪除文件
6. 刪除目錄
1. 打開文件
open()
函數(shù)用來打開文件
語法
open( name, mode )
1
參數(shù)
name:文件路徑
mode:可選,模式
返回值:文件對象
在
E
盤創(chuàng)建文件
a.txt
,使用
open()
函數(shù)打開該文件
file = open('E://a.txt') print(file)
1
2
輸出:
<_io.TextIOWrapper name='E://a.txt' mode='r' encoding='cp936'>
1
1.1 文件路徑
文件路徑分為兩種:
相對路徑
絕對路徑
1.1.1 相對路徑
相對路徑是指
「相對于當(dāng)前文件」
的路徑
打開當(dāng)前目錄下的
a.txt
文件
file = open('a.txt') print(file)
1
2
輸出:
<_io.TextIOWrapper name='a.txt' mode='r' encoding='cp936'>
1
1.1.2 絕對路徑
絕對路徑是指文章在
「電腦」
中的位置
打開
E
盤
Python
目錄下的
a.txt
文件
file = open('E://python/a.txt') print(file)
1
2
輸出:
<_io.TextIOWrapper name='E://python/a.txt' mode='r' encoding='cp936'>
1
1.2 模式
修改參數(shù)
mode
的值,可以指定文件的
「打開方式」
r:默認(rèn),讀取,打開文件并讀取,文件不存在則報錯
a:修改,打開文件準(zhǔn)備修改,文件不存在則創(chuàng)建
w:寫入,打開文件準(zhǔn)備寫入,文件不存在則創(chuàng)建
x:創(chuàng)建文件,文件存在則報錯
「打開模式」
t:默認(rèn),文本模式
b:二進(jìn)制模式(圖像)
file = open('a.txt', 'rt') print(file)
1
2
輸出:
<_io.TextIOWrapper name='a.txt' mode='rt' encoding='cp936'>
1
2. 創(chuàng)建文件
在當(dāng)前目錄創(chuàng)建文件
b.txt
open('b.txt', 'x')
1
檢查左側(cè)目錄,會多出一個文件 b.txt
3. 讀取文件
read()
函數(shù)用來讀取文件內(nèi)容
語法
read( n )
1
參數(shù)
n:可選,讀取幾個字符
返回值:讀取的內(nèi)容
3.1 讀取所有文件
讀取文件
a.txt
的全部內(nèi)容
file = open('a.txt', encoding='utf-8') text = file.read() print(text)
1
2
3
輸出:
第一行 第二行 第三行 第四行 ……
1
2
3
4
5
3.2 讀取指定字符
讀取文件
a.txt
的前
6
個字符
file = open('a.txt', encoding='utf-8') text = file.read(6) print(text)
1
2
3
輸出:
第一行 第二
1
2
3.3 讀取指定行
readline()
函數(shù)可以讀取一行內(nèi)容
讀取文件
a.txt
第一行內(nèi)容
file = open('a.txt', encoding='utf-8') text = file.readline() print(text)
1
2
3
輸出:
第一行
1
file = open('a.txt', encoding='utf-8') i = 0 while i < 3: text = file.readline() print(text) i += 1
1
2
3
4
5
6
輸出:
第一行 第二行 第三行
1
2
3
4
5
3.4 遍歷文件
使用
for
循環(huán)遍歷文件,
「逐行讀取」
文件內(nèi)容
file = open('a.txt', encoding='utf-8') for text in file: print(text)
1
2
3
輸出:
第一行 第二行 第三行 第四行 ……
1
2
3
4
5
3.5 關(guān)閉文件
close()
函數(shù)可以關(guān)閉文件,如果文件未關(guān)閉,對文件的
「修改」
可能會
「不生效」
file = open('a.txt', encoding='utf-8') print(file.read(3)) file.close()
1
2
3
輸出:
第一行
1
4. 修改文件
write()
函數(shù)可以向文件中寫入內(nèi)容
修改文件內(nèi)容時,需要指定
open()
函數(shù)的參數(shù)
a:
「追加」
內(nèi)容至文件末尾
w:
「寫入」
內(nèi)容至文件中(覆蓋原文件內(nèi)容)
向文件
a.txt
中追加內(nèi)容
file = open('a.txt', 'a', encoding='utf-8') file.write('新添加的內(nèi)容') file.close() # 修改模式的文件不可讀,需重新打開文件 file = open('a.txt', 'r', encoding='utf-8') print(file.read())
1
2
3
4
5
6
7
輸出:
第一行新添加的內(nèi)容
1
file = open('a.txt', 'w', encoding='utf-8') file.write('新添加的內(nèi)容') file.close() # 修改模式的文件不可讀,需重新打開文件 file = open('a.txt', 'r', encoding='utf-8') print(file.read())
1
2
3
4
5
6
7
輸出:
新添加的內(nèi)容
1
5. 刪除文件
exists()
函數(shù)可以判斷
「文件是否存在」
remove()
函數(shù)可以根據(jù)文件名
「刪除文件」
import os if os.path.exists('a.txt'): print('文件存在,刪除文件') os.remove('a.txt') else: print('文件不存在,無法刪除')
1
2
3
4
5
6
7
輸出:
文件存在,刪除文件
1
6. 刪除目錄
rmdir()
函數(shù)可以刪除目錄(文件夾)
import os os.rmdir('mulu')
1
2
3
觀察左側(cè)目錄,文件夾 mulu 已被刪除
Python
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。