python3文件讀取read、readline、readlines

1. read()

  • 讀取整個(gè)文件,將文件內(nèi)容放到一個(gè)字符串變量中。read()直接讀取字節(jié)到字符串中,包括了換行符。如果文件非常大,尤其是大于內(nèi)存時(shí),無(wú)法使用read()方法。
file = open('test.txt', 'r')  # 創(chuàng)建的file,也是一個(gè)可迭代對(duì)象 for line in file: ...

try:
    text = file.read()  # 結(jié)果為str類型
    print(type(text), text)  # <class 'str'> 'text1\ntext2\n...'
except Exception as e:
    print('read error', e)

file.close()

2. realine()

  • readline()方法每次讀取一行,返回的是一個(gè)字符串對(duì)象,保持當(dāng)前行的內(nèi)存。readline() 讀取整行,包括行結(jié)束符,并作為字符串返回。讀取比readlines慢。
file = open('test.txt', 'r')

try:
    while True:
        text_line = file.readline()  # text_line = file.readline()[:-1] 去掉\n
        if text_line:
            print(type(text_line), text_line)  # <class 'str'> 'text\n '
        else: 
            break
except Exception as e:
    print('read error', e)
finally:
    file.close()

3. readlines()

  • 一次性讀取整個(gè)文件,自動(dòng)將文件內(nèi)容分析成一個(gè)行的列表。readlines()讀取所有行然后把它們作為一個(gè)字符串列表返回。
file = open('test.txt', 'r')

try:
    text_lines = file.readlines()
    print(type(text_lines), text_lines)  # <class 'list'> ['text\n', 'text\n', 'text\n',...]
    for line in text_lines:
        print(type(line), line)  # <class 'str'> 'text\n'
finally:
    file.close()
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容