python 教程:read(),readline() 和 readlines() 比較

共同點:都可接受一個變量用以限制每次讀取的數據量,但一般不使用python

區別:學習

read() 【即 fileObject().read( [size] ) 】this

特色:讀取整個文件,將文件內容放在一個字符串變量中。code

劣勢:若是文件很是大,尤爲大於內存時,沒法使用read()方法。內存

with open(r'../learn_file/file_to_read.txt', encoding='utf-8', mode='r') as fb:
    content = fb.read()
    print(type(content))
    print(content)
# 輸出:
# <class 'str'>
# line 1: Hello, Mike.
# line 2: Nice to meet you. I'm Nick.
# line 3: Welcome to Shenzhen.
# line 4: Thx, it is really a beautiful city. I enjoy my time here.
# line 5: It is. Shall we go for some coffee this afternoon.
# line 6:Sure. And I want to discuss some details about the project we're going to work for

readline() 【即 fileObject.readline( [size] ),[size]表示可選參數。】utf-8

特色:從文件中一行一行地整行讀取數據,若是指定了一個非負數的參數,則返回指定大小的字節數。ci

缺點:比readlines()慢得多字符串

#Python學習交流羣:778463939

with open(r'../learn_file/file_to_read.txt', encoding='UTF-8', mode='r+') as fb:
    while True:
        content = fb.readline().replace('\n', '')
        # content = fb.readlines()
        # if not content:
        #     break
        if content:
            print(type(content), content)
        else:
            break
        # print(type(content))
        # print(type(content), content)
    print(fb.name)
# 輸出:
# <class 'str'> line 1: Hello, Mike.
# <class 'str'> line 2: Nice to meet you. I'm Nick.
# <class 'str'> line 3: Welcome to Shenzhen.
# <class 'str'> line 4: Thx, it is really a beautiful city. I enjoy my time here.
# <class 'str'> line 5: It is. Shall we go for some coffee this afternoon.
# <class 'str'> line 6:Sure. And I want to discuss some details about the project we're going to work for.
# ../learn_file/file_to_read.txt

readlines() 【即 fileObject.readlines( [sizeint] ),[sizeint] 表示可選參數】it

特色:從文件一次讀取全部行並返回列表,若給定sizeint > 0,返回總和大約爲sizeint字節的行class

with open(r'../learn_file/file_to_read.txt', encoding='utf-8', mode='r') as fb:
    content = fb.readlines()
    print(type(content))
    for line in content:
        print(type(line), line.replace('\n', ''))
# 輸出
# <class 'list'>
# <class 'str'> line 1: Hello, Mike.
# <class 'str'> line 2: Nice to meet you. I'm Nick.
# <class 'str'> line 3: Welcome to Shenzhen.
# <class 'str'> line 4: Thx, it is really a beautiful city. I enjoy my time here.
# <class 'str'> line 5: It is. Shall we go for some coffee this afternoon.
# <class 'str'> line 6:Sure. And I want to discuss some details about the project we're going to work for.
相關文章
相關標籤/搜索