【Python】文字データを置換する|OpenPyXL基礎

文字データを置換する|OpenPyXL基礎_アイキャッチ プログラミング

※ 当サイトはアフィリエイト広告を利用しています。

levtech-ad
スポンサーリンク

OpenPyXLを使用すると、PythonからExcelを操作することができます。

本記事では、OpenPyXLを使用した文字データを置換する方法について、詳しくご説明します。

こんな人に読んでほしい
  • Pythonを使用してExcelを操作したい人
  • OpenPyXLを使用した、文字データを置換する方法を知りたい人
levtech-ad

文字データの置換

以下データが入ったExcelファイルについて、文字データを置換する方法をご紹介します。

Sample (drink list)

指定文字データの置換

以下を入力することで、指定文字データを置換することができます。

#input
import openpyxl

wb = openpyxl.load_workbook("drink.xlsx")
ws = wb['Sheet1']

for row in ws.iter_rows():
    for cell in row:
        if cell.col_idx == 1:
            new_text = cell.value.replace("テーブル", "Table")
            cell.value = new_text

# 名前を付けて保存
wb.save("drink001.xlsx")
指定文字データの置換

指定文字データ「テーブル」を「Table」に置換しています。

複数文字データの置換

以下を入力することで、複数データを置換することができます。

#input
import openpyxl

wb = openpyxl.load_workbook("drink.xlsx")
ws = wb['Sheet1']

# 文字列データ(置換前後)を入力
before = ["お茶","コーヒー","tea","coffee"]
after = ["紅茶","アイスコーヒー","black tea","iced coffee"]
i = 0

for list in before:
    i = i + 1
    for row in ws.iter_rows():
        for cell in row:
            if list in cell.value:
                new_text = cell.value.replace(list, after[i-1])
                cell.value = new_text

# 名前を付けて保存
wb.save("drink002.xlsx")
複数文字データの置換

以下の通り、複数文字データを置換しています。

  • お茶 → 紅茶
  • コーヒー → アイスコーヒー
  • tea → black tea
  • coffee → iced coffee

空白(スペース)の削除

以下を入力することで、空白(スペース)を削除することができます。

#input
import openpyxl

wb = openpyxl.load_workbook("drink.xlsx")
ws = wb['Sheet1']

# 空白(全角,半角スペース)を指定
Space = [" "," "]
i = 0

for list in Space:
    i = i + 1
    for row in ws.iter_rows():
        for cell in row:
            if list in cell.value:
                new_text = cell.value.replace(list,"")
                cell.value = new_text

# 名前を付けて保存
wb.save("drink003.xlsx")
空白(スペース)の削除

A2~A6セルの「番」と「テーブル」の間に含まれていたスペースが削除されたことが分かると思います。

まとめ

この記事では、OpenPyXLを使用した文字データを置換する方法について、ご説明しました。

本記事を参考に、ぜひ試してみて下さい。

参考

Python学習用おすすめ教材

Pythonの基本を学びたい方向け

統計学基礎を学びたい方向け

Pythonの統計解析を学びたい方向け

おすすめプログラミングスクール

Pythonをはじめ、プログラミングを学ぶなら、TechAcademy(テックアカデミー)がおすすめです。

私も入っていますが、好きな時間に気軽にオンラインで学べますので、何より楽しいです。

現役エンジニアからマンツーマンで学べるので、一人では中々続かない人にも、向いていると思います。

無料体験ができますので、まずは試してみてください!

\まずは無料体験!/
スポンサーリンク
タイトルとURLをコピーしました