게시판
검색 결과: 40
- 이전
- 1
- 2
- 3
- 4 (current)
문제의 예시에서는 6이 출력되어야 하고
문의한 코드는 4를 출력합니다.
따라서 문제의 예시에서 the라는 단어가 들어 있는 6개의 단어를 찾아서 형광펜으로 표시하고,
반복문 안에서 각각의 단어를 출력하고, 'the'를 발견했을 때는 ******** 같이 눈에 잘 띄는 문자를 출력해보세요.
자신이 작성한 코드에서 the를 발견하지 못하는 위치를 식별하면 문제 해결의 실마리를 찾을 수 있을 겁니다.
moon = input()
moon2 = moon.strip(',.')
words = moon.split(' ')
cnt = 0
for i in words:
if i == 'the':
cnt += 1
print(cnt)
어떤 점이 문제일까요..?
word.strip()을 한 상태를 어딘가에 저장하지 않습니다.
파이썬 셸에서는 word.strip()만으로 결과를 바로 보여주지만,
그 결과를 이용하려면 변수에 저장해야 합니다.
word.strip(',.')이 코드는 지워도 결과는 같습니다. 애초에 쓰지 않았으니까요.
word.strip()한 결과는 메모리에 임시로 저장되고, 다음 줄로 가면 사라집니다. word에는 처음 입력받은 원본 문자열이 그대로 저장되어 있습니다.
word에서 strip으로 ,과 .을 제대로 지우고 카운트해야 합니다. 그러면 if 문을 여러 개 쓰지 않고
if word == 'the': 하나만 써서 처리할 수 있습니다.
위 코드는
'the.'인 문자열은 찾아서 카운트할 수 있지만, 'the....'이나 'the,,,,,'인 문자열은 찾아서 카운트할 수 없습니다. strip으로 정상적으로 ,과 .을 제어했을 때만 심사를 통과할 수 있습니다.
paragraph = input().split()뭐가 문제일까요 ㅜㅜㅜ
count=0
for word in paragraph:
word.strip(',.')
if word=='the':
count+=1
elif word=='the,':
count+=1
elif word=='the.':
count+=1
print(count)
다른 글에 답변다신걸 봐도
뭐가 틀렸는지 이해가 잘 안돼요 ㅜㅜㅜㅜ
파이썬으로 데이터 분석을 할 때 단어수 세기는 자주 사용합니다. 이럴 때는 텍스트 데이터의 성격을 정확하게 이해하는 게 중요합니다.
에디터에 제시문을 넣고 the로 찾아보면 특징을 알 수 있습니다.
whether, themselves는 제외해야 하고, the,와 the.이 있습니다. 공백으로 분류하면 the,과 the.이 단어로 기록되므로 the와 일치하지 않습니다.
if 문 안에서 word를 출력해보면서 어떻게 동작하는지 이해하고 디버깅해보세요.
아무리 머리를 쥐어짜내도 이 코드가 최선이라 답이 계속 4가 나옵니다... 여기서 어떻게 더 진전시켜야 할 지 모르겠어요ㅠㅠ
for word in text: -> for word in paragraph:
if world=='the': -> if word == 'the':
paragraph=input().split()
count=0
for word in text:
word.strip(',.')
if world=='the':
count+=1
print(count)
이렇게 코드를 작성했는데 뭐가 틀렸는지 잘 모르겠네요...ㅜ
심사문제는 정답이 없습니다.
앞에서 배운 이론과 연습문제를 이용하면 풀 수 있습니다. 심사의 목적은 내용 이해와 학습이므로 충분히 풀 수 있게 배려되어 있습니다. 이는 높은 통과율에서 알 수 있습니다. 중간중간 낮은 통과율이 있는 문제는 의도된 것입니다. 지금까지 학습한 내용을 동원해서 잘 풀지 않으면 통과할 수 없는 문제입니다. UNIT 23의 지뢰찾기는 특히 낮은 통과율을 보입니다. 이는 의도된 설계입니다. 학교라면 중간고사라고 생각하면 될 정도의 난이도입니다.
심사 문제는 모두 테스트되었습니다.
<파이썬 코딩 도장>의 심사문제는 베타 기간 1년 6개월, 2400여명이 참여해서 테스트했습니다. 심사 데이터에 문제가 있다면 해당 문제는 통과율 0%가 되고, 이는 관리자가 쉽게 파악할 수 있습니다.
심사 통과자의 통과율은 다음과 같습니다.
- 이전
- 1
- 2
- 3
- 4 (current)