zoukankan      html  css  js  c++  java
  • python 教程:read(),readline() 和 readlines() 比较

    共同点:均可接受一个变量用以限制每次读取的数据量,但通常不使用

    区别:

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

    特点:读取整个文件,将文件内容放在一个字符串变量中。

    劣势:如果文件非常大,尤其大于内存时,无法使用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]表示可选参数。】

    特点:从文件中一行一行地整行读取数据,如果指定了一个非负数的参数,则返回指定大小的字节数。

    缺点:比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('
    ', '')
            # 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] 表示可选参数】

    特点:从文件一次读取所有行并返回列表,若给定sizeint > 0,返回总和大约为sizeint字节的行

    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('
    ', ''))
    # 输出
    # <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.
    
  • 相关阅读:
    Ubuntu修改root默认密码
    2012年总结
    阿朵,网上传得沸沸扬扬,我们还是听听她的歌吧!
    人力资源开发网站
    关于ant
    ObjectSpaces
    firefox plugs
    xpi插件的安装
    年关
    https的资源
  • 原文地址:https://www.cnblogs.com/python960410445/p/13782899.html
Copyright © 2011-2022 走看看