게시판
검색 결과: 40
안녕하세요
24.5 문제 풀이 검토 과정에서 의문점이 생겨 질문드립니다.
검토 내용에서 단어 앞 뒤에 존재하는 , 과 . 를 삭제한 후 the와 비교한다고 하였는데, the 뒤에 다른 punctuation이 존재하는 경우는 고려하지 않은 것이 아닌지 의문입니다. 예를 들어, 대화 중 비속어이지만 'What the!' 라는 대사가 존재할 경우 이는 세지 못하는데, 어떻게 생각하시는지요?
포럼 상단 오른쪽 검색에 24.5로 검색하면 이미 질문과 답변이 많이 있으니 참고하세요.
https://dojang.io/mod/forum/discuss.php?d=1242&parent=2805
paragraph = input().split()
count = 0
for words in paragraph:
tmp = words.strip(',.')
if tmp == 'the':
count+=1
print(count)
한가지 질문 있습니다.
IDLE실행하면 6이 나오나 코딩도장에서는 오답으로 나옵니다. 왜 그런걸까요?
포럼 상단 오른쪽 검색에 24.5로 검색하면 이미 질문과 답변이 많이 있으니 참고하세요.
https://dojang.io/mod/forum/discuss.php?d=1242&parent=2805
이 문제는 나만 겪는 문제가 아닐 가능성이 매우 크기 때문에 검색하시면 참고할 게 있습니다. 현업 개발자들도 구글에서 많은 검색을 하죠.
안녕하세요. 심사문제 24.5 특정 단어 갯수 세는거 하고 있습니다.
c=input().split()
count=0
for word in c:
word.strip(',.')
print(word)
if word=='the':
count=count+1
print(count)
위와 같이 Code 세웠는데 strip이 안되는거 같습니다. word 가 for문에서 list 받으면 문자열로 받아서 될꺼 같은데 안되는 이유를 모르겠어서 질문 드립니다ㅠ
>>> word = 'the,'
>>> word.strip(',')
'the'
>>> word
'the,'
>>>
strip()을 호출한 결과는 나오지만, 그 결과를 저장하지 않았으니까 결과를 출력하고 결과는 사라집니다.
즉, word는 변경되지 않은 상태 그대로입니다.
par = input().split()
count = 0
for word in par:
word.strip(',.')
if word == 'the':
count += 1
else:
continue
print(count)
이렇게 코드 입력했는데 왜 자꾸 4가 나올까요?
list1[i] = 파라미터로 해서 'the'와 비교하면 답이 나오고,
UNIT 24.5 문제 질문이네요.
포럼 오른쪽 상단에서 24.5로 검색하면 이전 답변을 통해 문제점을 미리 파악할 수 있습니다.
https://dojang.io/mod/forum/search.php?id=7&search=24.5
이전 답변 중에 재인용한다면...
'the.'인 문자열은 찾아서 카운트할 수 있지만, 'the....'이나 'the,,,,,'인 문자열은 찾아서 카운트할 수 없습니다. strip으로 정상적으로 ,과 .을 제어했을 때만 심사를 통과할 수 있습니다.
IDLE에서는 결과가 바로 나오지만, 스크립트 파일로 할 때는 결과를 바로 비교하거나 다른 변수에 저장해야 합니다.
>>> word = 'the,,,,,,'
>>> word.strip(',')
'the'
>>> word
'the,,,,,,'
>>>
word.strip()을 해도 결과를 저장하지 않았으니까 word는 변경되지 않은 상태로 값을 저장하고 있습니다.
strip을 올바르게 사용하고, 결과를 비교하거나 저장해서 사용하지 않으면 심사문제를 통과할 수 없습니다.