ファイルとファイルシステム

4790 ワード

  • 今日はファイルに関する知識を学びました.今日は前の疑問を解決しました.前にオペレーティングシステムの実験報告をしたとき、ファイルに関する知識がありました.pythonで書いたのですが、細かいことに気づきました.ファイルをコンパイルするたびに、メモリが私の同級生より大きくなりました.その時は理解できませんでした.インターネットを利用しても原因が見つからない.今日発見したのは、ファイルを開けてopenを使っていたからだ.しかし、終わった後closedを使っていなかった.メモリ漏洩とは言わないが、メモリが大きくなったからだ.
  • ファイル読み出しのフォーマットおよびいくつかのパラメータ作用
  • open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)
    
     'r'         。              。      。 
     'w'           。             ,        。         。        ,     。
     'x'   ,      ,            。
     'a'    ,          。        ,             。    ,                。        ,         。
     'b'          。         , :  。
     't'       (  )。        , :txt。'+'     (           )
    
  • ファイルオブジェクトのメソッド、1.fileObject.close()は、開いているファイルを閉じるために使用されます.閉じたファイルは読み書き操作ができません.そうしないとValueErrorエラーが発生します.2.fileObject.read([size])は、指定された文字数をファイルから読み出すために使用され、指定されていない場合、または負の場合、すべてを読み出す.3.fileObject.readline()行全体を読み取り、「」文字を含む.4.fileObject.readlines()は、すべての行(終了子EOFまで)を読み出し、Pythonのfor... in ...構造によって処理され得るリストを返すために使用される.5.fileObject.tell()は、ファイルの現在位置、すなわちファイルポインタの現在位置を返す.6.-fileObject.write(str)ファイルに指定された文字列を書き込み、書き込み文字の長さを返します.7.fileObject.writelines(sequence)ファイルにシーケンス文字列リストを書き込み、改行が必要な場合は各行の改行番号
    を自分で追加します.
  • OSモジュールのファイル/ディレクトリに関する一般的な関数-os.getcwd()は、現在の作業ディレクトリを返すために使用されます.-os.chdir(path)は、現在の作業ディレクトリを指定されたパスに変更するために使用されます.-listdir (path='.')は、pathで指定されたフォルダに含まれるファイルまたはフォルダの名前のリストを返します.--os.mkdir(path)単一レベルのディレクトリが作成されます.このディレクトリに放出異常がある場合は-os.makedirs(path)は、複数階層ディレクトリを再帰的に作成するために使用されます.このディレクトリに例外が投げ出された場合-os.remove(path)は、指定されたパスのファイルを削除するために使用されます.指定されたパスがディレクトリの場合、OSErrorが投げ出されます.-os.rmdir(path)は、単一レベルのディレクトリを削除するために使用されます.このフォルダが空である場合にのみ、OSErrorを投げ出します.-os.removedirs(path)再帰的にディレクトリを削除し、サブディレクトリから親ディレクトリまで階層的に削除しようとします.ディレクトリが空でない場合は例外が放出されます.-os.rename(src, dst)メソッドは、ファイルまたはディレクトリに名前を付けるために使用され、srcからdstまで、dstが存在するディレクトリである場合、OSErrorが投げ出される.-os.system(command)システムを実行するshellコマンド(文字列をコマンドに変換)--os.curdirは現在のディレクトリ(.)-os.pardirは前のレベルのディレクトリ(..)-os.sepはオペレーティングシステム固有のパス区切り記号(winは\\、Linuxは/)を出力します-os.linesep現在のプラットフォームで使用されている行終端記号(winでは\r
    、Linuxでは
    )-os.nameは現在使用されているオペレーティングシステム(mac、ntを含む)--os.path.basename(path)はディレクトリパスを削除し、ファイル名-os.path.dirname(path)はファイル名を削除し、ディレクトリパス-os.path.join(path1[, path2[, ...]])path1を削除します.path2各セクションは、1つのパス名-os.path.split(path)に結合され、ファイル名とパスを分割し、(f_path,f_name)メタグループを返します.ディレクトリを完全に使用すると、最後のディレクトリがファイル名として分離され、ファイルまたはディレクトリが存在するかどうかは判断されません.-os.path.splitext(path)ファイル名と拡張子を分離し、(f_path,f_name)メタグループを返します.-os.path.getsize(file)は、バイト単位で指定されたファイルサイズを返します.-os.path.getatime(file)指定ファイルの最近のアクセス時間を返す-os.path.getctime(file)指定ファイルの作成時間を返す-os.path.getmtime(file)指定ファイルの最新の変更時間を返す-浮動小数点数秒、指定されたパス(ディレクトリまたはファイル)を判断するには、timeモジュールのgmtime()またはlocaltime()関数で換算できます.存在するか否か-os.path.exists(path)指定経路が絶対経路であるか否かを判定する-os.path.isabs(path)指定経路が存在するか否かを判定し、ディレクトリである-os.path.isdir(path)指定経路が存在するか否かを判定し、ファイルである-os.path.isfile(path)指定経路が存在するか否かを判定し、シンボルリンクである-os.path.islink(path)指定経路が存在するか否かを判定し、懸架点である-os.path.ismount(path) path 1を判定するpath 2と2つのパスが同じファイル
  • を指しているかどうか
  • 最後に、シーケンス化と逆シーケンス化に関するいくつかの知識も学んだ.