pythonで全角と半角を変換する方法4選|mojimojiやjaconvも紹介

pythonで全角半角を変換する方法4選

全角と半角が混在していているデータをきれいにしたいとき、今回紹介する方法が役に立ちます。

本記事ではpythonで全角と半角を変換する方法を紹介します。

目次

pythonで全角と半角を変換する4つの方法

pythonで全角と半角を変換する4つの方法

pyhtonで全角と半角を変換する方法を4つ紹介します。

本記事に記載しているコードは全てグーグルコラボラトリーで記述・動作確認をしています。

英数字を全角・半角に変換: str.translate()

英数字を全角・半角に変換: str.translate()

str.translate()は英数字を半角全角に変換できる関数です。

標準モジュールのため、インストール等の動作を必要としません。

STEP
str.maketrans()で変換テーブルを作成

始めにstr.maketrans()で変換テーブルを作成します。

今回は全角を半角に変換してみます。

テーブルはstr.maketrans(変換したい文字, 変換後の文字)で作成します。

text = str.maketrans('INFOMA','infoma')
STEP
str.translate()で半角・全角を変換

使用方法は、変換したい文字.translate(変換テーブル)です。

'INFOMA'.translate(text)

出力:

‘infoma’

unicode正規化で全角・半角を変換: unicodedata.normalize()

unicode正規化で全角・半角を変換: unicodedata.normalize()

unicodedata.normalize()はunicode正規化を行う関数です。

python公式ーunicodedata

unicode正規化とは全角・半角や1と①を同じものとして扱うようにすることです。

unicodedata.normalize(正規形, 変換したい文字)で使用します。

使用するにはunicodedataのインポートが必要です。

import unicodedata

使用するときは初めに正規化方法を指定する必要があります。正規化方法は、’NFC’、’NFKC’、’NFD’、’NFKD’の4つです。

text_1 = 'アイウエオアイウエオ①②1212abab'
print(unicodedata.normalize('NFKC', text_1))

出力:

アイウエオアイウエオ121212abab

カタカナは全角に、英数字は半角に変換されました。

日本語の半角・全角文字を変換する: mojimoji

日本語の半角・全角文字を変換する: mojimoji

mojimojiは日本語の半角・全角文字を変換できる外部ライブラリです。

グーグルコラボラトリーにはインストールされていないライブラリですので、下のコードを記述してインストールしてください。

pip install mojimoji

はじめにmojimojiをインポートします。

import mojimoji

半角を全角に変換したい場合はmojimoji.han_to_zen()、全角を半角に変換したい場合はmojimoji.han_to_zen()で変換可能です。

text_2 = 'アイウエオアイウエオ1212abab'
print(mojimoji.han_to_zen(text_2))
print(mojimoji.zen_to_han(text_2))

出力:

アイウエオアイウエオ1212abab
アイウエオアイウエオ1212abab

全角ひらがなを半角カタカナに変換可能: jaconv

全角ひらがなを半角カタカナに変換可能: jaconv

jaconv (Japanese Converter) はひらがな・カタカナ・全角・半角の文字種変換を高速に行うライブラリです。

jaconv

全角・半角の変換だけでなく、全角ひらがなを半角カタカナに変換することも可能です。

グーグルコラボラトリーにはjaconvがインストールされていないので、インストールが必要です。

pip install jaconv
import jaconv
text_3 = 'アイウエオアイウエオあいうえお'
print(jaconv.h2z(text_3)) #半角を全角に変換 
print(jaconv.kata2hira(text_3)) #カタカナをひらがなに変換
print(jaconv.hira2hkata(text_3)) #ひらがなを半角カタカナに変換

出力:

アイウエオアイウエオあいうえお
あいうえおアイウエオあいうえお
アイウエオアイウエオアイウエオ

まとめ

今回はpythonで全角半角変換する方法について紹介しました。

jaconvはひらがなを半角カタカナに変換できたりもするのでオススメです。

この記事を読んでpythonを勉強してみたいと思った人は次の記事も読んでください。

pythonを独学する方法について紹介しています。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次