def main(inputSentence, inputSentenceStyle, subjectHonorification): inputSentenceStyle, subjectHonorification = int(inputSentenceStyle), int( subjectHonorification) sentenceType = engInputAnalysis.sentenceType(inputSentence) # 문장종류 확인 # 주체 높임법 예외처리 if sentenceType == 'command': if subjectHonorification == 1: if inputSentenceStyle == '해' or inputSentenceStyle == '해라': print("error") exit(1) elif subjectHonorification == 0: if inputSentenceStyle == '해요' or inputSentenceStyle == '합쇼': print("error") exit(1) sentenceInfo, eng_pos = naverPapago.translate( inputSentence) # 파파고API로 번역 및 Komoran으로 형태소 분석 sentenceInfo = komoranSpacing.Spacing( sentenceInfo[1]) # 분석된 형태소를 이용하여 띄어쓰기 처리 # 주체 높임법 플래그, 불규칙 활용 여부 플래그 리스트에 추가 sentenceInfo.append([subjectHonorification, 0]) print(sentenceInfo, end="1\n") conversion.conversion(sentenceInfo, eng_pos) sentenceInfo = honorification.honorification1( sentenceInfo) # 주체 높임에 따른 '시' 추가 및 삭제 print(sentenceInfo, end="2\n") if inputSentenceStyle == 0: sentenceInfo = sentenceStyle.hae(sentenceInfo, sentenceType) elif inputSentenceStyle == 1: sentenceInfo = sentenceStyle.haera(sentenceInfo, sentenceType) elif inputSentenceStyle == 2: sentenceInfo = sentenceStyle.haeyo(sentenceInfo, sentenceType) elif inputSentenceStyle == 3: sentenceInfo = sentenceStyle.habsyo(sentenceInfo, sentenceType) print(sentenceInfo, end="3\n") if sentenceInfo[2][1] == 1: sentenceInfo = irregular.irregular(sentenceInfo) print(sentenceInfo, end="4\n") sentenceInfo = honorification.honorification2(sentenceInfo) print(sentenceInfo, end="5\n") sentenceInfo = josa.josa(sentenceInfo) print(sentenceInfo, end="6\n") sentenceInfo = vowelReduction.vowelReduction(sentenceInfo) print(sentenceInfo, end="7\n") outputSentence = hgtkTest.textCompose(sentenceInfo[0]) print(sentenceType) print(outputSentence) return outputSentence
def test_josa_italian(self): assert u'와' == josa.josa(u'mario', u'과', lang='ita') assert u'는' == josa.josa(u'luigi', u'은', lang='ita') assert u'이' == josa.josa(u'italian', u'가', lang='ita')
def test_josa_korean(self): assert u'를' == josa.josa(u'택시', u'를', lang='kor') assert u'를' == josa.josa(u'버스', u'을', lang='kor') assert u'이' == josa.josa(u'나뭇잎', u'가', lang='kor') assert u'이랑' == josa.josa(u'넥슨', u'랑', lang='kor')
def test_josa_english(self): assert u'를' == josa.josa(u'false positive', u'를') assert u'를' == josa.josa(u'false negative', u'을') assert u'이' == josa.josa(u'function', u'가') assert u'이랑' == josa.josa(u'deterministic', u'랑')