개발조각

[파이썬 실습] 심화 문제_문자의 빈도 조사하기 본문

엘리스 AI 트랙🐇/[AI 5기] 연습 문제집_파이썬 실습

[파이썬 실습] 심화 문제_문자의 빈도 조사하기

개발조각 2022. 6. 5. 23:48
728x90
반응형

문자의 빈도 조사하기

문자열은 하나이상의 문자들로 구성되어 있습니다. 영어 문장의 경우 a부터 z까지의 알파벳으로 구성되어 있죠

이런 영어문장에서 알파벳별로 갯수를 조사하는 파이썬 프로그램을 제작하려고 합니다.

지시사항에 맞춰 프로그램을 완성하세요

우리는 강의에서 메서드에 대해서 배웠습니다. 강의에서 배운 메서드 외에도 여러가지 편리한 메서드가 있는데요.

강의에서 배우지 않은 새로운 메서드를 힌트를 보고 활용해보세요

 

지시사항

동작과정

  1. 사용자에게서 문자열을 입력받습니다. (문자열에는 알파벳, 숫자, 특수기호가 포함될 수 있습니다.)
My name is Elice!
  1. 모든 문자를 소문자로 변환합니다.
my name is elice!
  1. 각 알파벳이 등장한 횟수를 alpha_cnt에 기록합니다.
  2. 문장의 첫 번째 알파벳의 등장횟수를 출력합니다. 예문에서는 M이 첫글자이니 m의 등장횟수를 출력합니다.
2

힌트

문자열은 lower()메서드와 isalpha() 메서드를 제공합니다.

lower()은 모든 문자를 소문자로 바꿔서 리턴해줍니다. 매개변수가 없이 lower()로 호출할 수 있습니다.

isalpha()는 이 문자열에 공백이나 특수기호가 없이 알파벳만으로 구성된 문자열인지를 판단하는 메서드입니다. 만약 모든 문자가 알파벳으로만 구성되어 있으면 True 다른 내용이 포함되어 있다면 False를 리턴합니다. 매개변수가 없이 isalpha()로 호출할 수 있습니다.


정답

string = input()
alpha_cnt = {}

# string =  # TODO: 문자열의 모든 문자를 소문자로 변환합니다.
string =  string.lower()

for char in string:
    # TODO: 글자가 알파벳이라면 alpha_cnt 딕셔너리를 이용하여 그 횟수를 기록
    if char.isalpha():
        if char in alpha_cnt : alpha_cnt[char]+=1
        else : alpha_cnt[char]=1

# TODO: string의 첫번째 문자가 등장한 횟수를 출력
print(alpha_cnt[string[0]])
728x90
반응형
Comments