python-IOプログラミング、ファイル読み書き

2771 ワード

一、書類の読み書き
1、ファイルを開く
関数:open(name[.mode[.buffering]))
パラメータ:
  • name:必須;ファイルのファイル名(フルパスまたは実行ファイルの相対パス)
  • mode:オプション;ファイルの読み書きモードは、デフォルトでは読み取りモードです.
  • buffering:オプション;デフォルトではバッファはありません.

  • 戻る:ファイルオブジェクト
    例:
  • file Object=open(r'c:123.txt')は、小文字のアルファベット「r」に注意し、文字列が文字そのものであり、エスケープなどの特殊な意味がないことを示す.
  • fileObject=open('c:\123.txt')、反スラッシュの2つは''を表します.

  • 2、ファイルモード
    modeパラメータ:
  • ‘r’:読み出しモード
  • ‘w’:書き込みモード
  • ‘a’:追加モード
  • "b":バイナリモード(他のモードに追加可能)
  • '+':読み取り/書き込みモード(他のモードに追加可能)
  • 「r」、読み取り専用.
    「w」、書き、元の内容が置き換えられます.
    「a」は、元の内容の後に内容を追加します.
    「b」は、テキストには一般的に使用されませんが、MP 3、ピクチャ、rb:バイナリのような他のタイプのファイル(バイナリ)を処理します.
    3、ファイルバッファ
    bufferingパラメータ:
  • 0:バッファなし
  • 1:バッファがあり、改行文字があればメモリのデータをファイル
  • に書き込む
  • が1より大きい数字:バッファのサイズ;バッファを超えるとメモリデータをファイル
  • に書き込む.
  • -1:デフォルトバッファサイズ
  • バッファなしで、ハードディスク(HDD)に直接データを書き込みます.
    バッファがあり、データはメモリに書き込まれ、flush関数またはclose関数を使用してのみハードディスクに更新されます.
    4、ファイルの読み込み
    ファイルの読み込みは、バイト単位の読み取りと行単位の読み取りに分けられます.
    一般的な関数:
  • read():
  • readline()
  • close()

  • file = open('c:\\123.txt')
    #ファイルのすべてをメモリに読み込む
    file.read()#はstrタイプのオブジェクトを返し、パラメータを伝達することができ、正の整数で、1回の最大読み出しを表すバイト数
    #ファイルの1行分のデータを読み込む
    file.readline()
    for line in file.readline():
        print(line.strip())
    #会ファイルの参照を閉じる
    file.close()ファイルオブジェクトはオペレーティングシステムのリソースを占有し、システムのIO操作に影響します.ファイルの使用が完了したら、閉じなければなりません.
    プログラムの頑丈性を保証し、tryを使用します.finallyファイルの読み取り/書き込みを実現
    try:
        file = open('c:\\123.txt')
        print(file.read())
    finally:
        if file:
            file.close()
    #     
    with open('c:\\123.txt') as file:
        print(file.read())

    5、ファイル書き込み
    ファイルの読み取りにはmodeパラメータ、「w」または「wb」を参照する必要があります.
    「wb」パラメータ値を使用して、テキストファイルをバイナリで読み書きし、キャッシュがあればwrite関数をメモリに書き、キャッシュがなければファイルに書きます.
    flush関数はメモリのデータをファイルに書きます.close関数はメモリ内のすべてのデータをファイルに書きます.
    ファイルを書くにもtryを使う必要があります...finallyまたはwith文はコードを記述します.