zoukankan      html  css  js  c++  java
  • Python读写文件

    1.open
    使用open打开文件后一定要记得调用文件对象的close()方法。比如可以用try/finally语句来确保最后能关闭文件。

    file_object = open('thefile.txt')
    try:
         all_the_text = file_object.read( )
    finally:
         file_object.close( )

    注:不能把open语句放在try块里,因为当打开文件出现异常时,文件对象file_object无法执行close()方法。

    2.读文件
    读文本文件
    input = open('data', 'r')
    #第二个参数默认为r
    input = open('data')

    读二进制文件
    input = open('data', 'rb')
     

    读取所有内容
    file_object = open('thefile.txt')
    try:
         all_the_text = file_object.read( )
    finally:
         file_object.close( )
     

    读固定字节
    file_object = open('abinfile', 'rb')
    try:
        while True:
             chunk = file_object.read(100)
            if not chunk:
                break
             do_something_with(chunk)
    finally:
         file_object.close( )
     

    读每行
    list_of_all_the_lines = file_object.readlines( )

    如果文件是文本文件,还可以直接遍历文件对象获取每行:

    for line in file_object:
         process line
     

    3.写文件
    写文本文件
    output = open('data', 'w')
     

    写二进制文件
    output = open('data', 'wb')
     

    追加写文件
    output = open('data', 'w+')
     

    写数据
    file_object = open('thefile.txt', 'w')
    file_object.write(all_the_text)
    file_object.close( )
     

    写入多行
    file_object.writelines(list_of_text_strings)

  • 相关阅读:
    一道模拟赛题
    Codechef Union on Tree
    BZOJ3435: [Wc2014]紫荆花之恋
    BZOJ3924: [Zjoi2015]幻想乡战略游戏
    BZOJ4372: 烁烁的游戏
    BZOJ3730: 震波
    BZOJ4317: Atm的树+2051+2117
    [六省联考2017]相逢是问候(扩展欧拉定理+预处理幂)
    「BJOI2018」治疗之雨(概率+高斯消元转递推)
    「BJOI2018」链上二次求和(线段树)
  • 原文地址:https://www.cnblogs.com/emanlee/p/3871723.html
Copyright © 2011-2022 走看看