Skip to content

Instantly share code, notes, and snippets.

@EDDxample
Created March 22, 2020 20:29
Show Gist options
  • Save EDDxample/bd3a92b735de862ed702e67a79c33487 to your computer and use it in GitHub Desktop.
Save EDDxample/bd3a92b735de862ed702e67a79c33487 to your computer and use it in GitHub Desktop.
hiragana/katakana romanizator
kanas = {
'あ':'a','い':'i','う':'u','え':'e','お':'o','か':'ka','き':'ki','く':'ku','け':'ke','こ':'ko','さ':'sa','し':'shi','す':'su','せ':'se','そ':'so','た':'ta','ち':'chi','つ':'tsu','て':'te','と':'to','な':'na','に':'ni','ぬ':'nu','ね':'ne','の':'no','は':'ha','ひ':'hi','ふ':'fu','へ':'he','ほ':'ho','ま':'ma','み':'mi','む':'mu','め':'me','も':'mo','や':'ya','ゆ':'yu','よ':'yo','ら':'ra','り':'ri','る':'ru','れ':'re','ろ':'ro','わ':'wa','を':'wo','ん':'n',
'ア':'a','イ':'i','ウ':'u','エ':'e','オ':'o','カ':'ka','キ':'ki','ク':'ku','ケ':'ke','コ':'ko','サ':'sa','シ':'shi','ス':'su','セ':'se','ソ':'so','タ':'ta','チ':'chi','ツ':'tsu','テ':'te','ト':'to','ナ':'na','ニ':'ni','ヌ':'nu','ネ':'ne','ノ':'no','ハ':'ha','ヒ':'hi','フ':'fu','ヘ':'he','ホ':'ho','マ':'ma','ミ':'mi','ム':'mu','メ':'me','モ':'mo','ヤ':'ya','ユ':'yu','ヨ':'yo','ラ':'ra','リ':'ri','ル':'ru','レ':'re','ロ':'ro','ワ':'wa','ヲ':'wo','ン':'n',
'が':'ga','ぎ':'gi','ぐ':'gu','げ':'ge','ご':'go','ざ':'za','じ':'ji','ず':'zu','ぜ':'ze','ぞ':'zo','だ':'da','ぢ':'dji','づ':'zu','で':'de','ど':'do','ば':'ba','び':'bi','ぶ':'bu','べ':'be','ぼ':'bo','ぱ':'pa','ぴ':'pi','ぷ':'pu','ぺ':'pe','ぽ':'po',
'ガ':'ga','ギ':'gi','グ':'gu','ゲ':'ge','ゴ':'go','ザ':'za','ジ':'ji','ズ':'zu','ゼ':'ze','ゾ':'zo','ダ':'da','ヂ':'dji','ヅ':'zu','デ':'de','ド':'do','バ':'ba','ビ':'bi','ブ':'bu','ベ':'be','ボ':'bo','パ':'pa','ピ':'pi','プ':'pu','ペ':'pe','ポ':'po',
}
sokuon = ['っ','ッ']
youon = {'ゃ':'ya','ゅ':'yu','ょ':'yo','ャ':'ya','ュ':'yu','ョ':'yo','ェ':'e'}
text = 'それなのに なぜ め も あわせやしない ん だい'
text = 'ネバ ゴナ ギブ ユー アップ'
text = 'ピンチェ ボルド'
out = ''
for i, char in enumerate(text):
if char == 'ー' and i > 0:
out += out[-1]
elif char in sokuon:
if i+1 < len(text): out += kanas[text[i+1]][0]
elif char in youon:
if i > 0: out = out[:-1] + youon[char]
else:
out += char if not char in kanas else kanas[char]
print(out)
@0xb01u
Copy link

0xb01u commented Mar 22, 2020

Pinche EDD.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment