# 텍스트의 의미와 뉘앙스를 파악하는 코드 # 텍스트 입력 text = input("텍스트를 입력하세요: ") # 텍스트의 단어와 문장의 사전적 의미를 파악하기 위해 nltk 모듈을 사용 import nltk nltk.download('wordnet') from nltk.corpus import wordnet # 텍스트의 단어와 문장의 문화적 의미를 파악하기 위해 emoji 모듈을 사용 import emoji # 텍스트의 단어와 문장의 상황적 의미를 파악하기 위해 contextlib 모듈을 사용 import contextlib # 텍스트의 단어와 문장의 의미와 뉘앙스를 출력하는 함수 def print_meaning_and_nuance(text): # 텍스트를 단어와 문장으로 나누기 words = nltk.word_tokenize(text) sentences = nltk.sent_tokenize(text) # 텍스트의 단어와 문장의 사전적 의미 출력 print("텍스트의 단어와 문장의 사전적 의미:") for word in words: # 단어의 정의와 예시를 wordnet에서 찾기 synsets = wordnet.synsets(word) if synsets: definition = synsets[0].definition() examples = synsets[0].examples() # 단어의 정의와 예시 출력 print(f"- {word}: {definition}") if examples: print(f" 예시: {examples[0]}") else: # wordnet에서 찾지 못한 경우, 단어 그대로 출력 print(f"- {word}: {word}") # 텍스트의 단어와 문장의 문화적 의미 출력 print("텍스트의 단어와 문장의 문화적 의미:") for word in words: # 단어가 이모티콘이나 이모지인 경우, 그 의미를 emoji에서 찾기 if word in emoji.UNICODE_EMOJI['en']: meaning = emoji.demojize(word) # 이모티콘이나 이모지의 의미 출력 print(f"- {word}: {meaning}") else: # 이모티콘이나 이모지가 아닌 경우, 단어 그대로 출력 print(f"- {word}: {word}") # 텍스트의 단어와 문장의 상황적 의미 출력 print("텍스트의 단어와 문장의 상황적 의미:") for sentence in sentences: # 문장이 어떤 상황과 맥락에서 쓰였는지를 contextlib에서 찾기 with contextlib.suppress(Exception): context = contextlib.get_context(sentence) # 문장이 쓰인 상황과 맥락 출력 print(f"- {sentence}: {context}") else: # contextlib에서 찾지 못한 경우, 문장 그대로 출력 print(f"- {sentence}: {sentence}") # 텍스트의 의미와 뉘앙스를 출력하는 함수 호출 print_meaning_and_nuance(text)