ファイルの読み取り、書き込み、作成を行う Python メソッド
Pythonでのファイルやフォルダーの操作(ファイル操作関数)には、osモジュールとshutilモジュールが必要です。
現在のPythonスクリプトが動作するディレクトリパスである現在の作業ディレクトリを取得します: os.getcwd()
指定されたディレクトリ内のすべてのファイルとディレクトリ名を返します: os.listdir()
関数が使用されますファイルを削除するには: os .remove()
複数のディレクトリを削除: os.removedirs(r "c:python")
指定されたパスがファイルかどうかを確認します: os.path.isfile()
指定されたパスはディレクトリです: os.path.isdir()
それが絶対パスであるかどうかを判断します: os.path.isabs()
指定されたパスが実際に存在するかどうかを確認します: os.path.exists()
Returnパス ディレクトリ名とファイル名: os.path.split() 例: os.path.split('/home/swaroop/byte/code/poem.txt') 結果: ('/home/swaroop/byte/code' 、'poem .txt')
別の拡張子: os.path.splitext()
パス名を取得: os.path.dirname()
ファイル名を取得: os.path.basename()
シェルコマンドを実行: os .system()
環境変数の読み取りと設定: os.getenv() および os.putenv()
は、現在のプラットフォームで使用される行終端記号を提供します: os.linesep Windows は 'rn' を使用し、Linux は 'n を使用します' Mac では使用しているプラットフォームを示すために 'r' を使用します: os.name Windows の場合は 'nt'、Linux/Unix ユーザーの場合は 'posix' です
名前の変更: os.rename(old, new)
複数レベルのディレクトリを作成する: os.makedirs(r "c:pythontest")
単一のディレクトリを作成する: os.mkdir("test")
ファイル属性を取得する: os.stat(file)
ファイルを変更する権限とタイムスタンプ: os.chmod (ファイル)
現在のプロセスを終了: os.exit ()
ファイルサイズを取得: os.path.getsize (filename)
ファイル操作:os.mknod("test. txt") は空のファイルを作成します
fp = open("test.txt",w) ファイルを直接開きます。ファイルが存在しない場合は、ファイルを作成します
オープンモードについて:
w は書き込みモードで開きます、
a は追加モードで開きます 開く (EOF で開始し、必要に応じて新しいファイルを作成します)r+ 読み取り/書き込みモードで開きます
w+ 読み取り/書き込みモードで開きます ( w を参照)
a+ 読み取り/書き込みモードで開きます (a を参照)
rb バイナリ読み取りモードでオープンします
wb バイナリ書き込みモードでオープンします ( w を参照)
ab バイナリ追加モードでオープンします ( a を参照)
rb+ バイナリ読み取りおよび書き込みモードでオープンします ( r+ を参照)
wb+ バイナリ読み取りおよび書き込みモードでオープンします( w+ を参照)
ab+ バイナリ読み取りおよび書き込みモードでオープン モードはオープン (a+ を参照)
fp.read([size]) #size は読み取りの長さ (バイト単位) です
fp.readline([size] ) #1 行を読み取り、サイズが定義されている場合は、行の一部のみが返される可能性があります
fp.readlines([size]) # ファイルの各行をリストのメンバーとして扱い、このリストを返します。実際、これはループ内で readline() を呼び出すことによって内部的に実装されます。 size パラメータが指定されている場合、size は読み取られるコンテンツの全長を表します。これは、ファイルの一部のみが読み取られることを意味します。
fp.write(str) #str をファイルに書き込みます。write() は str の後に改行文字を追加しません。
fp.writelines(seq) #seq のすべての内容をファイルに書き込みます (より多くの行が書き込まれます)。一斉に)。この関数も、各行の後に何も追加せずに、忠実に記述するだけです。
fp.close() #ファイルを閉じます。 Python は、使用されなくなったファイルを自動的に閉じますが、この機能は保証されていません。自分でファイルを閉じる習慣を身に付けることをお勧めします。 ファイルを閉じた後にファイルを操作すると、ValueError が生成されます
fp.flush() #バッファの内容をハードディスクに書き込みます
fp.fileno() #long 整数の「ファイルラベル」を返します
fp.isatty() #ファイルが端末デバイスファイルかどうか(UNIX系の場合)
fp.tell() #ファイルの先頭を原点としてファイル操作マークの現在位置を返す
fp.next() #次の行を返し、ファイル操作フラグを次の行に移動します。ファイルが for...in file などのステートメントで使用される場合、トラバーサルを実装するために next() 関数が呼び出されます。
fp.seek(offset[,whence]) #ファイル操作マークをオフセット位置に移動します。このオフセットは通常、ファイルの先頭を基準にして計算され、通常は正の数になります。ただし、whence パラメーターが指定されている場合は、この限りではありません。whence を 0 にすると最初から計算を開始し、1 を指定すると現在の位置を原点として使用できます。 2はファイルの末尾を起点として計算することを示します。ファイルを a または a+ モードで開いた場合、書き込み操作が実行されるたびに、ファイル操作マークは自動的にファイルの最後に戻ることに注意してください。
fp.truncate([size]) #ファイルを指定されたサイズにカットします。デフォルトでは、現在のファイル操作マークの位置までカットされます。サイズがファイル サイズより大きい場合、システムによっては、ファイルが変更されないか、対応するサイズまでファイルが 0 でパディングされるか、ランダムなコンテンツが追加されることがあります。
ディレクトリ操作:
os.mkdir("file") ディレクトリの作成
ファイルのコピー:
shutil.copyfile("oldfile","newfile") oldfileとnewfileはどちらもファイルのみ可能です
shutil.copy("oldfile"," newfile") oldfile はフォルダーのみ、newfile はファイルまたはターゲット ディレクトリにすることができます
フォルダーをコピーします:
shutil.copytree("olddir","newdir") olddir と newdir はどちらもディレクトリのみにすることができ、newdir はディレクトリにする必要があります存在しません
ファイル (ディレクトリ) の名前を変更します
os.rename("oldname","newname") ファイルまたはディレクトリを使用するには、このコマンドを使用します
ファイル (ディレクトリ) を移動します
shutil.move("oldpos","newpos")
ファイルを削除
os.remove("file")
ディレクトリを削除
os.rmdir("dir")は空のディレクトリのみを削除できます
shutil.rmtree("dir") 空のディレクトリとコンテンツのあるディレクトリの両方を削除できます
ディレクトリを変換
os.chdir("path") パスを変更します
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')
#2 番目のパラメーターのデフォルトは r
input = open('data')
バイナリ ファイルの読み取り
input ( 'data', 'rb')
すべてのコンテンツを読み取ります
file_object = open('thefile.txt')
try:
all_the_text = file_object.read( )
finally:
file_object.close( )
読み取り固定bytes
file_object = open('abinfile', 'rb')
try:
while True:
chunk = file_object.read(100)
チャンクでない場合:
break
do_something_with(chunk)
finally:
file_object .close( )
各行を読み取ります
list_of_all_the_lines = file_object.readlines( )
ファイルがテキストファイルの場合は、ファイルオブジェクトを直接走査して各行を取得することもできます:
file_object の行:
プロセス行
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)
writelines を呼び出して複数行を書き込む方が、write を使用して一度に書き込むよりもパフォーマンスが高いことに注意してください。
ログ ファイルを処理するとき、次のような状況がよく発生します。ログ ファイルが巨大で、一度にファイル全体をメモリに読み込んで処理することが不可能です。たとえば、ログ ファイルをコンピュータで処理する必要があります。 2GB の物理メモリの場合、一度に処理できるのはその内容の 200MB のみです。
Python では、組み込みの File オブジェクトは、そのようなことを実現するための readlines(sizehint) 関数を直接提供します。次のコードを例に挙げます。
file = open('test.log', 'r')sizehint = 209715200 # 200Mposition = 0lines = file.readlines(sizehint)while not file.tell() -position
readlines(sizehint) 関数が呼び出されるたびに、約 200MB のデータが返され、ほとんどの場合、返されるデータは完全な行データである必要があります。 , 返されるデータのバイト数は、sizehint で指定した値よりもわずかに大きくなります (readlines(sizehint) 関数が最後に呼び出された場合を除く)。通常、Python はユーザー指定の sizehint 値を内部キャッシュ サイズの整数倍に自動的に調整します。
file は Python の特別なタイプで、Python プログラムで外部ファイルを操作するために使用されます。 Python ではすべてがオブジェクトであり、File も例外ではありません。ファイル メソッドと属性があります。まずファイル オブジェクトを作成する方法を見てみましょう:
file(name[, mode[,buffering]])
file() 関数は、ファイル オブジェクトを作成するために使用されます。open() というエイリアスがあり、これは組み込み関数です。そのパラメータを見てみましょう。そのパラメータはすべて文字列の形式で渡されます。 name はファイルの名前です。
mode はオープン モードで、オプションの値は r wa a U で、それぞれ読み取り (デフォルト) と書き込みを表し、さまざまな改行をサポートするモードを追加します。 w または a モードでファイルを開く場合、ファイルが存在しない場合は自動的に作成されます。また、w モードを使用して既存のファイルを開く場合、初期ファイル操作マークがファイルの先頭にあるため、この時点で書き込み操作を実行すると、元のファイルの内容は消去されます。間違いなく削除されます。歴史的な理由により、改行文字にはシステムごとに異なるモードがあります。たとえば、Unix では n ですが、Windows では、U モードでファイルを開くと、すべての改行モードがサポートされます。これは ' を意味します。 r' 'n' 'rn' はすべて改行を表すことができ、このファイルで使用される改行文字を格納するために使用されるタプルがあります。ただし、改行にはさまざまなモードがありますが、Python で読み取る場合は代わりに n が使用されます。モード文字の後に、2 つの記号 + b t を追加することもできます。これらは、それぞれ、ファイルの読み取りと書き込みを同時に行うことができ、ファイルをバイナリ モードまたはテキスト モード (デフォルト) で開くことができることを示します。
buffering 0 の場合はバッファリングなしを意味し、1 の場合は「行バッファリング」を意味し、1 より大きい数値の場合はバッファーのサイズを意味します (バイト単位である必要があります)。
ファイル オブジェクトには独自のプロパティとメソッドがあります。まずはファイルの属性を見てみましょう。
closed #ファイルが閉じられたかどうかをマークし、close()で書き換えます
encoding #ファイルエンコード
mode #オープンモード
name #ファイル名
newlines #ファイルで使用される改行モードはタプルです
softspace #boolean type 、通常は 0、print
file に使用される読み取りおよび書き込みメソッドと言われています:
F.read([size]) #size は読み取りの長さ (バイト単位) です
F.readline([size] )
# サイズが定義されている場合は、行の一部のみを返すことができます
F.readlines([size])
# ファイルの各行をリストのメンバーとして扱い、このリストを返します。実際、これはループ内で readline() を呼び出すことによって内部的に実装されます。 size パラメータが指定されている場合、size は読み取られるコンテンツの全長を表します。これは、ファイルの一部のみが読み取られることを意味します。
F.write(str)
#str をファイルに書き込みます。write() は str の後に改行文字を追加しません。
F.writelines(seq)
#seq の内容をすべてファイルに書き込みます。この関数も、各行の後に何も追加せずに、忠実に記述するだけです。
ファイルのその他のメソッド:
F.close()
#ファイルを閉じます。 Python は、使用されなくなったファイルを自動的に閉じますが、この機能は保証されていません。自分でファイルを閉じる習慣を身に付けることをお勧めします。ファイルを閉じた後にファイルを操作すると、ValueError が生成されます
F.flush()
#バッファの内容をハードディスクに書き込みます
F.fileno()
#long 整数「ファイルラベル」を返します
F .isatty()
#端末デバイスファイルかどうか(UNIX系の場合)
F.tell()
#ファイルの先頭を原点としてファイル操作マークの現在位置に戻る
F.next()
#次の行を返し、ファイル操作フラグを次の行に移動します。ファイルが for ... in file などのステートメントで使用される場合、トラバーサルを実装するために next() 関数が呼び出されます。
F.seek(offset[,whence])
#ファイル操作マークをオフセット位置に移動します。このオフセットは通常、ファイルの先頭を基準にして計算され、通常は正の数になります。ただし、whence パラメーターが指定されている場合は、この限りではありません。whence を 0 にすると最初から計算を開始し、1 を指定すると現在の位置を原点として使用できます。 2はファイルの末尾を起点として計算することを示します。ファイルを a または a+ モードで開いた場合、書き込み操作が実行されるたびに、ファイル操作マークは自動的にファイルの最後に戻ることに注意してください。
F.truncate([size])
#指定されたサイズにファイルをカットします。デフォルトでは、現在のファイル操作マークの位置までカットされます。サイズがファイル サイズより大きい場合、システムによっては、ファイルが変更されないか、対応するサイズまでファイルが 0 でパディングされるか、ランダムなコンテンツが追加されることがあります。
上記の Python でファイルを読み書き、作成する方法 (必読) は、エディターが共有したすべての内容ですので、参考にしていただければ幸いです。また、皆様にも PHP 中国語をサポートしていただければ幸いです。 Webサイト。
ファイルの読み取り、書き込み、作成に関する Python の方法に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHPとPythonには独自の利点と短所があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1.PHPは、大規模なWebアプリケーションの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンスと機械学習の分野を支配しています。

CentOSシステムでのPytorchモデルの効率的なトレーニングには手順が必要であり、この記事では詳細なガイドが提供されます。 1。環境の準備:Pythonおよび依存関係のインストール:Centosシステムは通常Pythonをプリインストールしますが、バージョンは古い場合があります。 YumまたはDNFを使用してPython 3をインストールし、PIP:sudoyumupdatepython3(またはsudodnfupdatepython3)、pip3install-upgradepipをアップグレードすることをお勧めします。 cuda and cudnn(GPU加速):nvidiagpuを使用する場合は、cudatoolをインストールする必要があります

Pytorch GPUアクセラレーションを有効にすることで、CentOSシステムでは、PytorchのCUDA、CUDNN、およびGPUバージョンのインストールが必要です。次の手順では、プロセスをガイドします。CUDAおよびCUDNNのインストールでは、CUDAバージョンの互換性が決定されます。NVIDIA-SMIコマンドを使用して、NVIDIAグラフィックスカードでサポートされているCUDAバージョンを表示します。たとえば、MX450グラフィックカードはCUDA11.1以上をサポートする場合があります。 cudatoolkitのダウンロードとインストール:nvidiacudatoolkitの公式Webサイトにアクセスし、グラフィックカードでサポートされている最高のCUDAバージョンに従って、対応するバージョンをダウンロードしてインストールします。 cudnnライブラリをインストールする:

DockerはLinuxカーネル機能を使用して、効率的で孤立したアプリケーションランニング環境を提供します。その作業原則は次のとおりです。1。ミラーは、アプリケーションを実行するために必要なすべてを含む読み取り専用テンプレートとして使用されます。 2。ユニオンファイルシステム(UnionFS)は、違いを保存するだけで、スペースを節約し、高速化する複数のファイルシステムをスタックします。 3.デーモンはミラーとコンテナを管理し、クライアントはそれらをインタラクションに使用します。 4。名前空間とcgroupsは、コンテナの分離とリソースの制限を実装します。 5.複数のネットワークモードは、コンテナの相互接続をサポートします。これらのコア概念を理解することによってのみ、Dockerをよりよく利用できます。

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

CentOSでPytorchバージョンを選択する場合、次の重要な要素を考慮する必要があります。1。CUDAバージョンの互換性GPUサポート:NVIDIA GPUを使用してGPU加速度を活用したい場合は、対応するCUDAバージョンをサポートするPytorchを選択する必要があります。 NVIDIA-SMIコマンドを実行することでサポートされているCUDAバージョンを表示できます。 CPUバージョン:GPUをお持ちでない場合、またはGPUを使用したくない場合は、PytorchのCPUバージョンを選択できます。 2。PythonバージョンPytorch

Pytorchの分散トレーニングでは、Centosシステムでトレーニングには次の手順が必要です。Pytorchのインストール:PythonとPipがCentosシステムにインストールされていることです。 CUDAバージョンに応じて、Pytorchの公式Webサイトから適切なインストールコマンドを入手してください。 CPUのみのトレーニングには、次のコマンドを使用できます。PipinstalltorchtorchtorchvisionTorchaudioGPUサポートが必要な場合は、CUDAとCUDNNの対応するバージョンがインストールされ、インストールに対応するPytorchバージョンを使用してください。分散環境構成:分散トレーニングには、通常、複数のマシンまたは単一マシンの複数GPUが必要です。場所

NGINXのインストールをインストールするには、次の手順に従う必要があります。開発ツール、PCRE-Devel、OpenSSL-Develなどの依存関係のインストール。 nginxソースコードパッケージをダウンロードし、それを解凍してコンパイルしてインストールし、/usr/local/nginxとしてインストールパスを指定します。 nginxユーザーとユーザーグループを作成し、アクセス許可を設定します。構成ファイルnginx.confを変更し、リスニングポートとドメイン名/IPアドレスを構成します。 nginxサービスを開始します。依存関係の問題、ポート競合、構成ファイルエラーなど、一般的なエラーに注意する必要があります。パフォーマンスの最適化は、キャッシュをオンにしたり、ワーカープロセスの数を調整するなど、特定の状況に応じて調整する必要があります。
