python面試題之read、readline和readlines的區別詳解

一、read

可以一次性讀取文件中所有內容

1.txt文件內容

🔥語法:

file.read([size])

例1:file.read():會將所有的內容讀取出來

with open('1.txt','r') as file:
    content=file.read()
    print(content)

執行結果:

file.read():是從文件的頭部開始讀取的。如果想要讀取部分內容,可以先使用文件對象的seek()方法將文件的指針移動到新的位置,然後再應用read(size)方法讀取。

seek()方法的基本語法格式:

file.seek(offset[,whence])
file:表鎖已經打開的文件
offset:用於指定移動的字符個數
whence:用於指定從什麼位置開始計算,值為0表示從文件頭開始計算,1表示從當前位置開始計算,2表示從文件末尾開始計算,默認為0

例2:讀取部分內容

with open('1.txt','r') as file:
    file.seek(22)
    content=file.read()
    print(content)

執行結果:

例3:file.read(size):表示讀取size個字符

with open('1.txt','r') as file:
    file.seek(22)
    content=file.read(10)
    print(content)

執行結果:

二、readline

每次讀取一行數據

🔥格式:

file.readline()
file:打開的文件對象

例4:file.readline()讀取一條數據

with open('1.txt','r') as file:
    content=file.readline()
    print(content)

執行結果:

例5:通過循環將文件中的數據全部讀取出來

with open('1.txt','r') as file:
    number=0
    while True:
        number+=1
        content=file.readline()
        if content=='':
            break
        print(number,content,end='\n')

執行結果:

三、readlines

讀取全部行,返回的是一個字符串列表,每個元素為文件的一行內容

🔥語法:

file.readlines()
file:打開的文件

例6:讀取全部行

with open('1.txt','r') as file:
    content=file.readlines()
    print(content)

執行結果:

例7:將列表元素逐行輸出

with open('1.txt','r') as file:
    content=file.readlines()
    for index,item in enumerate(content):
        print(index,item)

執行結果:

總結

  1. .read() 每次讀取整個文件,它通常將讀取到底文件內容放到一個字符串變量中,也就是說 .read() 生成文件內容是一個字符串類型。
  2. .readline()每隻讀取文件的一行,通常也是讀取到的一行內容放到一個字符串變量中,返回str類型。
  3. .readlines()每次按行讀取整個文件內容,將讀取到的內容放到一個列表中,返回list類型。

到此這篇關於python面試題之read、readline和readlines區別的文章就介紹到這瞭,更多相關python read、readline和readlines區別內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: