문제 :
문제: 문자열에서 가장 많이 등장하는 단어를 찾아 반환하는 함수를 작성하세요.
예시 입력: "apple banana cherry apple banana"
예시 출력: "apple"
def solution(s):
words = list(s.split())
word_count = {}
for word in words:
if word in word_count: #키가 딕셔너리에 존재한다면
word_count[word] +=1
else:
word_count[word] =1
#딕셔너리의 키값으로 정렬
result = max(word_count,key = word_count.get)
return result
print(solution("apple banana cherry apple banana"))
파이썬 딕셔너리에서 가장 큰 값 구하는 방법
1. 최대 value 가 하나인 경우 -> dic.get()
result = max(word_count,key = word_count.get)
파이썬 dict.get(key,default=None) => 키값을 집어 넣어 value 값을 넣어준다.
2. max() 함수와 dict.value()
def solution(s):
words = list(s.split())
word_count = {}
for word in words:
if word in word_count: #키가 딕셔너리에 존재한다면
word_count[word] +=1
else:
word_count[word] =1
#딕셔너리의 키값으로 정렬
#result = max(word_count,key = word_count.get)
all_values= word_count.values()
max_values= max(all_values)
return word_count.get(max_values)
print(solution("apple banana cherry apple banana"))
value만 모아준 뒤에 그 중 큰값을 찾는다. 그 후 그 값을 기준으로 키 값을 찾아보지만, 값이 여러개가 존재해 키가 나오지 않는 결과 발생!
'코딩 > 파이썬' 카테고리의 다른 글
[python]연결리스트 뒤집기 (0) | 2023.07.18 |
---|---|
[프로그래머스] 두 개 뽑아서 더하기 (0) | 2023.07.17 |
[프로그래머스] 문자열 내 마음대로 정렬하기,python (0) | 2023.07.17 |
[Python] Unindent amount does not match previous indentPylance 에러 (0) | 2023.07.17 |
프로그래머스 숫자 문자열과 영단어 파이썬 딕셔너리와 for문 (0) | 2023.07.15 |