-
[파이썬] 일본어 한자에 후리가나 달기/일본어 한자 히라가나 변환코딩/파이썬 2021. 9. 14. 16:17반응형
일본어를 공부하다 보면 제일 어려운 점이 한자입니다. 똑같은 한자라도 상황에 따라서 읽는 법이 달라지기도 해서 정말 골치 아프고 한자에 익숙하지 않으면 일본어로 되어 있는 글은 못 읽는 다고 생각하면 됩니다. 그래서 한자 옆이나 위에 히라가나로 읽는 법을 작게 써 놓는 것을 볼 수 있는데 이것을 후리가나라고 합니다. 앞서 말한 것 처럼 상황에 따라서 읽는 법이 달라질 수 있기 때문에 100% 정확하게 우리가 원하는 히라가나로 바뀌는 건 아니지만 제가 사용해 본 결과 70~80% 이상은 맞게 변환 되는 것 같습니다. 원하는 것과 다르게 변환 된 것은 수작업으로 바꾸는 수 밖에 없습니다. 그래도 전부 수작업으로 하는 것보다 수고가 훨씬 줄어드는 것은 사실인 것 같습니다.
일본어 한자에 후리가나 달기/일본어 한자 히라가나 변환
정규 표현식을 조작할 수 있는 re 패키지와 일본어 한자를 히라가나로 바꿔 주는 기능이 있는 pykakasi를 이용하여 일본어로 되어 있는 문장에 간단하게 후리가나를 달아주는 함수(furigana)를 만들어 보았습니다.
1234567891011121314151617181920212223242526272829#후리가나 만들기 위한 패키지인 pykakasi 설치!pip install pykakasiimport re #정규표현식을 이용하여 한자와 히라가나 구별import pykakasi #pykakasi를 이용하여 한자 히라가나 변환kks = pykakasi.kakasi()def furigana(text):hiragana_full = r'[ぁ-ゟ]'katakana_full = r'[゠-ヿ]'kanji = r'[㐀-䶵一-鿋豈-頻]'radicals = r'[⺀-⿕]'katakana_half_width = r'[⦅-゚]'alphanum_full = r'[!-~]'symbols_punct = r'[、-〿]'misc_symbols = r'[ㇰ-ㇿ㈠-㉃㊀-㋾㌀-㍿]'ascii_char = r'[ -~]'result = kks.convert(text)output = ''for item in result:text_i = item['orig']text_kanji = re.findall(kanji, text_i)if len(text_kanji) != 0 : #Kanjifuri = item['hira']output = f'{output}{text_i}[{furi}]'else:output = f'{output}{text_i}'return outputcs 다음 코드를 통해서 위에서 만든 함수의 결과가 어떻게 나오는지 예시를 보도록 하겠습니다.
12my_text = 'お前にできることは俺にもできるんだぜ!'furigana(my_text)cs 결과: お前[まえ]にできることは俺[おれ]にもできるんだぜ!
2022.03.04 - [일본어/일본어 기타] - 일본어에 후리가나/요미가나를 자동으로 생성해 보자
반응형'코딩 > 파이썬' 카테고리의 다른 글
[파이썬] 개별 주식 주간/월별 주익률 계산하기 (How to Calculate Weekly and Monthly returns of individual stocks) (0) 2021.10.15 [파이썬] Mean-Variance Frontier 계산하기 (최적 포트폴리오 계산하기) (4) 2021.10.14 [파이썬] 주식 포트폴리오 수익률 계산하기 (Calculate portfolio returns) (10) 2021.10.11 [파이썬] 개별 주식 일별 수익률 계산 (Calculate daily individual stock returns) (0) 2021.10.09 [파이썬] 자막에서 텍스트만 뽑아내기 (2) 2021.03.01