Briswell Tech Blog

ブリスウェルのテックブログです

江戸言葉変換ツール

f:id:KenjiU:20210227211050j:plain

今回は江戸言葉です。

「するってえと何かい!」

このような勢いがある「べらんめえ口調」の言葉です。落語や時代劇で良く使われるので、聞き覚えがある人も多いのではないでしょうか。100万都市の江戸には、武士、職人、商人など様々な身分の多くの人が行き交っていました。テンポよくユーモアもある言葉使いがコミュニケーションの潤滑油にもなっていたようです。

「味噌汁で顔洗って出直してこいってんだ!」

相手があまりにふざけている時に使うフレーズですが、つい笑ってしまいますね。現代に生きる私たちも粋な江戸の会話術、参考になるのではないでしょうか。

さて、江戸ブログではなく、テックブログなので...
現代の言葉を江戸言葉に変換するツールを作ってみましょう。

PythonGUIを構築できるライブラリ「tkinter」を使用します。

import tkinter
from tkinter import messagebox

#辞書を定義
edo_dict = {
'ありがとうございます':'ありがとうございやす', 
'ください':'くれっ',
'すごい':'すげぇ',
'そうですか':'そうかよ', 
'たいした':'てぇした',
'ですか':'かよ',
'ですね':'だぁね', 
'ですよ':'だぜ',
'とても':'えれぇ',
'ない':'ねぇ',
'はい':'おぅ'}

#ボタンをクリック時に実行
def button_click():
    input_value = input_text.get("1.0",'end') #テキストボックスの文字の最初から最後まで読み取る
    dict_list = [] #変換リスト
    for i, one_dic in enumerate(edo_dict.items()): #辞書を読み込む
        input_value = input_value.replace(one_dic[0], '{'+str(i)+'}') #入力値に変換対象があれば変換されるようにセット
        dict_list.append(one_dic[1]) #変換リストに追加
    input_value = input_value.format(*dict_list) #変換実施
    messagebox.showinfo("クリックイベント",input_value) #画面に変換結果を表示

#ウインドウの作成
root = tkinter.Tk()
root.title("江戸言葉変換ツール")
root.geometry("360x450")

#テキストボックスの作成
input_text = tkinter.Text(width=40)
input_text.place(x=10, y=50)

#ラベルの作成
input_label = tkinter.Label(text="粋でいなせな言葉に変換しやす")
input_label.place(x=10, y=20)

#ボタンの作成
button = tkinter.Button(text="江戸言葉に変換",command=button_click)
button.place(x=10, y=390)

#アプリの待機
root.mainloop()

コードを実行し、何か言葉を入力します。

f:id:KenjiU:20210227205918p:plain
変換前

変換ボタンをクリックすると、粋でいなせな江戸言葉に変換されます。

f:id:KenjiU:20210227212311p:plain
変換後

とーんときたね!