はじまり
ただいマジLOVE1000%~。
おかえListen to my heart!!
今日さ~、道を歩いてたら側溝のドブに落ちちゃってさ~
お、おう。まあ、その話も気になるんだが、なんかリサちゃんのセリフの文字の濁音おかしくね?
なんか、濁音が1文字として認識されていないような。
え? 本当に? ビビデバビデブー・・・。
本当だ! 全部濁音が変だ! (コピペしてみよう!)
あらあら、じゃあ、僕がこの前作ったスクリプトで直しますかあ!
なんか段々おじさんがド○えもんに見えてきたよ・・・
ツールのソース
こちらがツールのソースになります。
target
に濁点が別の文字となってしまっている文字列を列挙して、replace
にその文字と同じ順序に修正後の文字列を列挙しています。
class ReplaceCharacter:
def MakeVoicedsound(self, text):
"""
text : String of target text.
"""
target = 'がぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ'
replace = 'がぎぐげござじずぜぞだぢづてどばびぶべぼぱぴぷぺぽガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ'
list_target = []
list_replace = []
for i in range(0, len(target), 2):
list_target.append(target[i : i+2])
for i in range(0, len(replace), 1):
list_replace.append(replace[i : i+1])
for i in range(0,len(list_target)):
text = text.replace(list_target[i], list_replace[i])
return text
テストクラスのソース
今回初めて、テストコードを作って、pytestモジュールでテストさせてみました。
pytestがテストコードを認識できるように、test/__<strong>init__</strong>.py
を作るのを忘れずに。
test/test_TextReplacer.py
from TextReplacer import ReplaceCharacter
class Test_ReplaceCharacter:
# Unicode : \u3099
def test_MakeVoicedsound_1_1(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('がぎぐげござじずぜぞ') == 'がぎぐげござじずぜぞ'
def test_MakeVoicedsound_1_2(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('だぢづでどばびぶべぼ') == 'だぢづてどばびぶべぼ'
# Unicode : \u309A
def test_MakeVoicedsound_1_3(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('ぱぴぷぺぽ') == 'ぱぴぷぺぽ'
# Unicode : \u3099
def test_MakeVoicedsound_1_4(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('ガギグゲゴザジズゼゾ') == 'ガギグゲゴザジズゼゾ'
def test_MakeVoicedsound_1_5(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('ダヂヅデドバビブベボ') == 'ダヂヅデドバビブベボ'
# Unicode : \u309A
def test_MakeVoicedsound_1_6(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('パピプペポ') == 'パピプペポ'
# dakuon
def test_MakeVoicedsound_2_1(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('がぎぐげござじずぜぞ') == 'がぎぐげござじずぜぞ'
def test_MakeVoicedsound_2_2(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('だぢづてどばびぶべぼ') == 'だぢづてどばびぶべぼ'
#handakuon
def test_MakeVoicedsound_2_3(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('ぱぴぷぺぽ') == 'ぱぴぷぺぽ'
# dakuon
def test_MakeVoicedsound_2_4(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('ガギグゲゴザジズゼゾ') == 'ガギグゲゴザジズゼゾ'
def test_MakeVoicedsound_2_5(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('ダヂヅデドバビブベボ') == 'ダヂヅデドバビブベボ'
# handakuon
def test_MakeVoicedsound_2_6(self):
replaceCharacter = ReplaceCharacter()
assert replaceCharacter.MakeVoicedsound('パピプペポ') == 'パピプペポ'
おしまい
どうだい? 直ったかね!
やった! 直った! 私のセリフの濁音が1文字で表示されてるぞ!
はっはっは。それでドブに落ちたらどうなったんだい?
うん、ドブに落ちたら、なんか踏んだ感覚がしてドブの中を探してみたら、1カラットくらいの指輪が落ちてたんだよね。とりあえず拾って引き続き帰ろうとしたら、黒服の人に追いかけられて、巻くべく倉庫の方に逃げたんだけど、結局捕まっちゃっだよね。黒服が私を捕らえた理由は拾った指輪らしくて、その指輪を渡したら、なんかコンクリートが溜まってるドラム缶の中に押し込まれそうになってめっちゃ焦ったんだけど、その時、どこからともなく、着物を着た長髪の男性が助けてくれて、私は何とか助かりました。どうやら、その指輪はこの世に一つしかない貴重なダイヤらしくて、その指輪の本当の持ち主はその着物を着た男性のものだったらしく、「今後もその男性が黒服には睨みを効かせるから、お嬢ちゃんは安心して今まで通り生活しろよ! 指輪を見つけてくれありがとな!」と言われて、今、家に帰ってきました。
ただいマジLOVE2000%~!! 生きてて良かった~~~!!
ほ~~~! とりあえず、濁音を1文字にしておいて良かった~~~!!
以上になります!
おまけ
今回の記事のサムネイルが「ペンぎん」なのに、俺が出てこないなんてアリ!?
今回のツールのソースは以下のリポジトリの「LandmasterLibrary」に上がっています。
コメント