LoginSignup
4
1

More than 3 years have passed since last update.

猫の日だにゃったにゃので、猫っぽい言葉に変換するものを作ってみたにゃ

Posted at

なんでまとめたにゃ?

今日が02/22(猫の日)だにゃったにゃので何とにゃくまとめてみましたにゃ
→気づけば、日付またにゃいでて、02/22に間に合ってにゃいけどにゃ!

普通に、読みづらいのと、恥ずかしいので、以降は普通に書いていきますね。

環境は?

Google colaboratoryを使用しサクッと簡単なものを作りました。
簡単に記述しておくと、Google提供のブラウザ上から無償で使用できる、Jupyter Notebook環境ですね。
スマートフォンなんかからも、アクセスしてエディット&実行できます。(すごい便利)

どんなふうに?

1.入力された日本語をローマ字に変換(ライブラリ:pykakasiを使用)
2.ローマ字を猫っぽく変換(ただの置換)
3.ローマ字を日本語に再変換(ライブラリ:romkanを使用)
4.以上

実際の中身については?

使用しているライブラリは以下です。

ライブラリ名 内容 リンク
pykakasi 日本語(漢字・ひらがな・カタカナ)→ローマ字変換 https://github.com/miurahr/pykakasi
romkan ローマ字→日本語(ひらがな・カタカナ)変換 https://pypi.org/project/romkan/
サクッとライブラリインストール
pip install git+https://github.com/miurahr/pykakasi romkan 
コード
# coding: utf-8
from pykakasi import kakasi
import romkan

#日本語→ローマ字
def j2roma(jtext):
  kakasi_ = kakasi()

  kakasi_.setMode('H', 'a')  #ひらがな→ローマ字
  kakasi_.setMode('K', 'a')  #カタカナ→ローマ字
  #kakasi_.setMode('J', 'a') #漢字→ローマ字
  kakasi_.setMode("s", True) #分かち書き

  conv = kakasi_.getConverter()

  #print(jtext)
  return conv.do(jtext)
  #char_list = list(conv.do(filename))
  #print(char_list)

#猫っぽく変換(ここに変換するローマ字を追加)
def s2h(rtext):
    dst = rtext.replace("na","nya")
    dst = dst.replace("ta","tanya")
    dst = dst.replace("da","danya")
    return dst

#ローマ字→日本語
def roma2j(rtext):
    return romkan.to_hiragana(rtext)

#メイン
def nyaa(jtext):
  rtext = j2roma(jtext)
  rnyan = s2h(rtext)
  jnyan = roma2j(rnyan)
  return jnyan

実行&リザルト
実行
nyaa("メロスは激怒した。必ず、かの邪智暴虐じゃちぼうぎゃくの王を除かなければならぬと決意した。")
リザルト
'めろす は 激 怒 したにゃ。 必 ず、 かの 邪 智 暴 虐 じゃちぼうぎゃくの 王 を 除 かにゃければにゃらぬと 決 意 したにゃ。'

まとめ

意外とそれっぽくなりますね、あと、ねこはかわいい。

参考

Pythonを使ってフェフ姉言葉に変換してみた件

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1