• python文件操作_read()与readlines(),write()与writelines()方法的差异


    python文件操作:read()与readlines()均可从文件读取所有数据,write()与writelines()方法均可以向文件写入多行数据,那么它们之间有哪些差异呢?

    一、从文件读取所有数据:read()与readlines()方法的差异

    示例文件:

    read()方法读取文件所有数据:当read()方法不指定读取的字节数时,可一次将文件中所有数据读取出来

    运行结果

    debug调试查看读取的数据

    可以看到使用read()方法读取出来的数据是一个包含了换行符(" ")的str类型字符串,每一行的换行符均包含在该字符串中

    readlines()方法读取文件中所有数据

    运行结果

    debug调试查看读取的数据

     可以看到使用readlines()方法读取出来的数据是一个字符串列表,列表中的每一个元素均是文件中的一行数据,每一个元素均包含了文件中每行的换行符(" ")

    read()方法与readlines()方法读取文件所有数据时的差异:

    使用read()方法读取文件所有数据,文件指针返回的是一个字符串,文件中所有行均包含在这个字符串中,而使用readlines()方法读取文件所有数据,文件指针将返回一个字符串列表(列表中所有元素均是str类型),文件指针将会把文件中的每一行内容(包含每行的换行符)存放到列表中返回。虽然两种方法均可一次读取文件中所有数据,但如果要对读取出来的数据做后续处理时,使用read()方法将不好处理读取的数据,而使用readlines()方法将会更方便。

    二、向文件写入多行数据

    示例:向文件写入以下两行数据(以下每行数据均是str类型)

    url:/futureloan/mvc/api/member/register@mobile:18866668888@pwd:123456
    url:/futureloan/mvc/api/member/recharge@mobile:18866668888@amount:1000
     

    write()方法写入多行数据:要写入的数据中包含每一行中的换行符时,可以实现与writelines()方法向文件写入多行数据

    debug查看写入的数据

    写入结果

    从结果可以看出,若要使用write()方法实现向文件写入多行数据,要么先把所有行数据带上换行符后再拼接成一个字符串一次性写入,另一种方法是使用for循环遍历一行一行写入,但无论使用哪种方法,write()方法内的参数都必须是str类型数据

     

     

    writelines()方法写入多行数据

    运行结果

    写入结果

    从结果可以看出,使用writelines()方法可以一次向文件写入多行数据,且writelines()方法内的参数可以是一个字符串列表,也可以是一个字符串(若不包含换行符则只写入到一行中,若包含换行符则将写入多行),且列表中每个字符串元素均带有换行符,列表中每一个元素被视为一行数据写入到文件中

     

    write()方法与writelines()方法写入多行数据总结:

    使用write()与writelines()方法均可向文件写入多行数据,不同的是:write()方法必须传递的是一个字符串参数,而使用writelines()方法可传递一个字符串参数  一个字符串列表;即:使用read()方法读出来的数据可通过write()方法与writelines()方法写入至文件,则使用readlines()方法读取出来的数据只能使用writelines()方法写入至文件

  • 相关阅读:
    pytorch中的torch.autograd.backward()和torch.autograd.grad()
    深度学习中的归一化方法BN、LN、IN、GN
    PostgreSQL函数和操作符
    IDEA中cannot_resolve_method?
    IDEA 打开后很卡?
    win10磁盘分区
    PostgreSQLの交-并-差集(INTERSECT、UNION、EXCEPT)
    oracleの交-并-差集(INTERSECT、UNION /UNION ALL 、MINUS)
    秋招总结
    产品经理面试问题及答案大全《一》
  • 原文地址:https://www.cnblogs.com/Rachel-84351228/p/13680145.html
Copyright © 2020-2023  润新知