ホームページ バックエンド開発 Python チュートリアル Pythonでtxtテキストファイルを読み書きする操作方法を徹底解析

Pythonでtxtテキストファイルを読み書きする操作方法を徹底解析

Jul 06, 2016 pm 01:29 PM
python txt 文章 読み書き

1. ファイルを開いて作成する

リーリー


2. ファイルの読み込み
ステップ: 開く -- 読む -- 閉じる

リーリー


データの読み取りは、データの後処理に必要なステップです。 .txt は広く使用されているデータ ファイル形式です。一部の .csv、.xlsx、およびその他のファイルは、読み取りのために .txt ファイルに変換できます。私はよく Python に付属の I/O インターフェイスを使用してデータを読み取り、リストに保存し、その後 numpy 科学計算パッケージを使用してリスト データを配列形式に変換し、MATLAB のように科学計算を実行できるようにします。

以下は、txt ファイルを読み取るために一般的に使用されるコードであり、ほとんどの txt ファイルの読み取りに使用できます

リーリー

例えば、読み込むtxtファイルは以下の通りです

2016626171647895.png (429×301)

読み取った後、Enthought Canopy の変数ウィンドウで読み取ったデータを表示します。左側が POS、右側が Efield です。

2016626171713978.png (148×277)2016626171743777.png (147×280)

3. ファイルの書き込み(元のファイルを消去しないように注意してください)
手順: 開く -- 書き込み -- (保存) 閉じる
デフォルトでは「r」読み取り専用モードが開かれているため、データを直接書き込むことはできません

リーリー

最初に書き込み可能モードを指定する必要があります

リーリー

ただし、この時点ではデータはキャッシュに書き込まれるだけで、ファイルには保存されません。以下の出力からわかるように、元の設定はクリアされています。

リーリー
このファイルを閉じて、キャッシュ内のデータをファイルに書き込みます

リーリー
注: 編集されたファイルが存在する場合、この手順ではまずファイルがクリアされてから再書き込みされるため、この手順は非常に慎重に行う必要があります。では、ファイルをクリアしてから書き込みたくない場合はどうすればよいでしょうか?

r+ モードを使用すると、最初はクリアされませんが、次の例のように、元のファイルが置き換えられます: helloboy! は hello aay!
に置き換えられます。

リーリー
非代替を実現するにはどうすればよいですか?

リーリー
書き込む前にファイルを読み込んでから書き込むと、元のファイルを置き換えずに、書き込んだデータがファイルの末尾に追加されることがわかります。これは、r+ モードのポインタがデフォルトでファイルの先頭にあるため、read() を介してファイルを読み取った後、ポインタはファイルの末尾に移動します。ファイルにデータを書き込んでも問題ありません。ここでもモードを使用できます

リーリー
他のモードの概要については、以下の表を参照してください:


2016626170852899.png (713×317)

ファイルオブジェクトのメソッド:

f.readline() データを 1 行ずつ読み取ります
方法 1:

リーリー
方法 2:

リーリー
f.next() は、f.readline() と同様にデータを 1 行ずつ読み取ります。唯一の違いは、f.readline() は最後にデータがない場合に空を返すのに対し、f.next() は空を返さないことです。データを受信するとエラーが報告されます

リーリー
f.writelines() 複数行の書き込み

リーリー
f.seek(オフセット、オプション)

リーリー
この例では、以前に r+ モードを使用するときに、通常の挿入前に f.read() を実行する必要がある理由を完全に説明できます

f.seek(オフセット、オプション)
(1) オプション = 0、ファイル ポインターがファイルの先頭から「オフセット」バイトを指していることを示します
(2) Option=1 は、ファイルポインタをファイルの現在位置を指し、「オフセット」バイトを後方に移動することを意味します
(3) オプション = 2 は、ファイル ポインターをファイルの末尾にポイントし、「オフセット」バイトを前方に移動することを意味します

オフセット: 正の数値は右へのオフセットを意味し、負の数値は左へのオフセットを意味します

リーリー
f.flush() (ファイルを閉じずに) ファイルに変更を書き込みます

リーリー
リーリー
リーリー
f.tell() ポインタの位置を取得します

リーリー

4. コンテンツの検索と置換 1. コンテンツ検索

例: ファイル内の hello 数の統計
アイデア: ファイルを開き、ファイルの内容を調べ、正規表現を使用してキーワードを照合し、一致の数を数えます。

リーリー


リーリー
スクリプトは次のとおりです:

方法 1:

リーリー
方法 2:

リーリー

2、替换
实例:把test.txt 中的hello全部换为"hi",并把结果保存到myhello.txt中。

#!/usr/bin/python
import re
f1 = open('/tmp/test.txt')
f2 = open('/tmp/myhello.txt','r+')
for s in f1.readlines():
f2.write(s.replace('hello','hi'))
f1.close()
f2.close()
[root@node1 python]# touch /tmp/myhello.txt
[root@node1 ~]# cat /tmp/myhello.txt
hi girl!
hi boy!
hi man!
hi python!
ログイン後にコピー

实例:读取文件test.txt内容,去除空行和注释行后,以行为单位进行排序,并将结果输出为result.txt。test.txt 的内容如下所示:

#some words

Sometimes in life,
You find a special friend;
Someone who changes your life just by being part of it.
Someone who makes you laugh until you can't stop;
Someone who makes you believe that there really is good in the world.
Someone who convinces you that there really is an unlocked door just waiting for you to open it.
This is Forever Friendship.
when you're down,
and the world seems dark and empty,
Your forever friend lifts you up in spirits and makes that dark and empty world
suddenly seem bright and full.
Your forever friend gets you through the hard times,the sad times,and the confused times.
If you turn and walk away,
Your forever friend follows,
If you lose you way,
Your forever friend guides you and cheers you on.
Your forever friend holds your hand and tells you that everything is going to be okay. 

ログイン後にコピー

脚本如下:

f = open('cdays-4-test.txt')
result = list()
for line in f.readlines():                # 逐行读取数据
line = line.strip()                #去掉每行头尾空白
if not len(line) or line.startswith('#'):   # 判断是否是空行或注释行
continue                  #是的话,跳过不处理
result.append(line)              #保存
result.sort()                       #排序结果
print result
open('cdays-4-result.txt','w').write('%s' % '\n'.join(result))        #保存入结果文件

ログイン後にコピー

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

PHPおよびPython:コードの例と比較 PHPおよびPython:コードの例と比較 Apr 15, 2025 am 12:07 AM

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

CentosでPytorchモデルを訓練する方法 CentosでPytorchモデルを訓練する方法 Apr 14, 2025 pm 03:03 PM

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

CentosのPytorchのGPUサポートはどのようにサポートされていますか CentosのPytorchのGPUサポートはどのようにサポートされていますか Apr 14, 2025 pm 06:48 PM

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

Dockerの原則の詳細な説明 Dockerの原則の詳細な説明 Apr 14, 2025 pm 11:57 PM

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

Python vs. JavaScript:コミュニティ、ライブラリ、リソース Python vs. JavaScript:コミュニティ、ライブラリ、リソース Apr 15, 2025 am 12:16 AM

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

Centosの下でPytorchバージョンを選択する方法 Centosの下でPytorchバージョンを選択する方法 Apr 14, 2025 pm 02:51 PM

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

NginxをCentosにインストールする方法 NginxをCentosにインストールする方法 Apr 14, 2025 pm 08:06 PM

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

CentosでPytorchの分散トレーニングを操作する方法 CentosでPytorchの分散トレーニングを操作する方法 Apr 14, 2025 pm 06:36 PM

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

See all articles