[필수 과제 5] Morsecode

210807

사전 세팅

본문에는 encoding_dict 만 존재한다. decoding할 때 필요한 dictionary로 필요하므로 이에 대한 함수를 정의해준다

Get_decoding_dict

def get_decoding_dict():
    morse_code_dict = get_morse_code_dict()
    k = morse_code_dict.keys()
    v = morse_code_dict.values()
    decoding_dict = {}
    for x, y in zip(v, k):
        decoding_dict[x] = y
    return decoding_dict
  • 모스코드 딕셔너리를 받아 리버스하는 코드이다

    • 나중에 알았는데, reversed를 쓰면 가볍게 딕셔너리 관계를 바꿀 수 있었다

Is_validated_english_sentence

def is_validated_english_sentence(user_input):
    for exp in '0123456789_@#$%^&*()-+=[]{}\"\';:\|`~':
        if exp in user_input:
            return False
    
    return True if len([word for word in user_input if word not in ' .,!?']) else False
  • 숫자나, 정의된 특수문자가 포함되어 있으면 False 반환

  • 문장부호를 제외했을 때 빈칸이면 False 반환

Is_validated_morse_code

  • 정해진 모스기호 외 다른 글자가 있으면 False

  • 사전에 미리 생성한 디코딩 함수로 존재하는 모스코드인지에 대한 key 여부를 조사한다

Get_cleaned_english_sentence

Decoding_character

Encoding_character

Decoding_sentence

Encoding_sentence

Main

Last updated

Was this helpful?