*disclaimer
495702
[Python]
Pythonでテキスト処理
テキストファイルを開く
open
- ファイルをopenで開いてから
- 処理をして
- 読み終わったら、closeで閉じる
with open
- withをつけてopenすると、いちいちcloseしなくても自動で閉じてくれる。
with open('ファイル名') as 変数:
- ファイルを読み込み、変数に入れる。
- その変数を使って処理を進める。
- ファイルを開くモード:, mode='r'
- 文字コードの指定オプション encoding='UTF-8'
データの読み込み
read
- 内容すべて読み込み
- 改行記号も含めて読み込む。
- 読み込んだ状態では、改行記号も文字の一つとして、すべてが「一行」に並んだ文字列になる。
- 処理結果を出力する際には、改行記号もそのまま出力されるので、画面上では、改行され複数行として表示される。
with open("ファイル名", "r") as f: 変数名 = f.read()
読み込んだファイルの内容が変数に保存される。
readline
- 一行読み込み
readlines
- 一行一要素として、リスト形式で、すべて読み込み
- readlinesで一行ずつ読み込む
f = open('ファイル名') data = f.readlines() f.close()
- dataには、一行一要素として読み込んだデータがlist配列として保存される。
data[0], data[1], data[2], ...
- 読み込んだ行の要素には「改行記号」も含まれている点に注意
ファイルの書き込み
with open("ファイル名.txt", "x") as f: f.write(内容の変数名)
文字列の検索
正規表現検索 re.search()
- 正規表現でないものは search()
re.search("文字列", 検索対象)
in
- 文字列中に検索対象があるかどうかをTrue/Falseで表示
find
文字列中の何文字目に検索対象があるか、数字を表示
正規表現モジュール re
import re
文字列の処理
分割 split()
結合 join()
大文字に upper()
小文字に lower()
行頭大文字 capitalize()
単語頭大文字 title()
置換 replace()
replace("元の文字列", "新しい文字列")
bun = bun.replace("-", "") # ハイフンの削除
- 正規表現を使う場合は、re.sub()
- import re として正規表現ライブラリーの使用を宣言
re.sub("元の文字列の正規表現", "新しい文字列", 対象のオブジェクト)
bun = re.sub("[-━]", "", bun)
https://sugiura-ken.org/wiki/