Python でテキストファイルを読み書きするスクリプトをまとめておきます。
以下の環境で動作確認をしています。
環境: Windows 10、Python 3.X
背景
Python でテキストファイルを読み書きする方法についてまとめておきます。
パッケージを使えばより便利なコマンド等もあろうかと思いますが、その前段の、何も使わず当たり前となる部分についてまとめておきます。
(パッケージを使うと日本語等が文字化けした際の対応が煩雑化しますし。。)
設定のしかた
デスクトップ等にフォルダを1つ作ってください。
そのフォルダの中に test1.py, text1.txt の2つのファイルを作成して以下のスクリプトとデータをコピー&ペーストして保存してください。
実行方法
① コマンドプロンプト(Anaconda 等)を起動してください。
② Python + [space]、又は Python3 + [space] とキー入力し、上記 text1.py をコマンドプロンプト上にドラッグしてください。[enter] キーを押すと動作します。
スクリプトの解説
・ テキストの読み込み、書き出しは、with open ~ を使うことが勧められていますので、それに従っています。プログラミングのミス防止のためです。
・ 読み書きなどの一般的な処理は、プログラミングで作成したい処理と混ぜたくないため、def 文で関数とし、処理をわけています。
・ path1 は、test1.py のスクリプトのあるフォルダを参照するようにしています。必要により書き換えてください。
・ 後半で、ファイル text1.txt を読み込んで、標準出力で表示し、ファイル名を text2.txt に代えて書き出しています。
・ コピー&ペースト後、動作したら、print( str1 ) のあたりをアレンジして、独自の処理を加えてみてください。
まとめ
Python でテキストファイルを読み書きする方法についてまとめました。
他にも、下記の関連リンクで、Excel ファイルの読み込み、HTML ファイルの出力などについてもまとめています。
もし、関心があるようでしたら参考にしてみてください。
関連リンク
・ Excel ファイルを読み込む
・ テキストファイルを入出力する 【Python】
・ 配列(リスト)の読み書き、HTML の出力 【Python】
・ Python で HTML ファイルを出力する
・ if 文のサンプルコード 【Python】
サンプルコード
import os
def read1( file1 ):
with open( file1, 'r', encoding='utf-8' ) as f1:
str1 = f1.read()
return str1
def write1( file1, str1 ):
with open( file1, 'w', encoding='utf-8' ) as f1:
f1.write( str1 )
return 0
path1 = os.path.dirname(__file__) + "/"
file1 = path1 + "text1.txt"
str1 = read1( file1 )
print( str1 )
file1 = path1 + "text2.txt"
write1( file1, str1 )
abcd
efgh
ijkl