평균구하기 문제질문
조회수 1242회
text=input("단어를 입력하세요:")
result=text.split()
total_length=sum(len(result))
average_length= total_length/len(list)
print('평균길이는:',average_length)
평균구하는 문제를 풀려고 이런식으로 만들어봤는데 "int' object is not iterable"
이런 오류가 뜨고 찾아보니까 리스트값은 sum
이 안된다는 오류가 뜨는거 같은데 어떠한 길이의 리스트를 계속 더할려면 sum
말고는 무엇을 써야할까요?len(result[0])+..len(result[n])
같은건 안되겠죠..? 파이썬 배운지 며칠안되서 아는 함수가 없으니 좀 막막하네요.
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
2 답변
-
이런걸 원한건가요
sentence = input() # 'i am a student' word = sentence.split() # ['i', 'am', 'a', 'student'] word_len = [len(w) for w in word] # [1, 2, 1, 7] mean_word_len = sum(word_len) / len(word_len) # 11 / 4 print(mean_word_len) # 2.75
문장을 입력받는데 단어는
space
로 구분되어야 합니다.
문장내 단어들의 평균 길이를 구하는 코드입니다.-
(•́ ✖ •̀)
알 수 없는 사용자
-
-
len
함수는list
,tuple
, string같은 데이터 타입에 사용에 사용하면 길이를 반환합니다.
즉, 숫자를 반환합니다.
sum
함수는list
나tuple
같은 데이터 타입의 원소가 숫자일 때 합을 구해주는 함수입니다(예를 들어sum([1,2,3])
와 같이).
sum(39)
와 같이 사용할 수 없다는 의미입니다.
result = [1, 2, 3]
이라면total_length = sum(len(result))
는total_length = sum(3)
과 같겠죠?
그러니 오류가 나는 겁니다.
평균 구하는 거
와어떠한 길이의 리스트를 계속 더하려면
이랑 무슨 관계가 있는지 모르겠지만 리스트를 더하는 거는 아래 예를 참고하세요.arr = [1,2,3] arr2 = [7,8] arr.extend(arr2) print(arr) # [1,2,3,7,8]
-
(•́ ✖ •̀)
알 수 없는 사용자
- 아 왜 오류가 나는지는 이제 알겠습니다 근데 몇단어를 입력할지 모르는 상태인데 평균을 구할려면 어째야하죠..?어디까지 더해야하는지 모르겠어서요 하나의 변수에서 리스트길이의 총합을 구하고 싶어요! 알 수 없는 사용자 2020.4.21 21:18
- 하나의 변수에서 리스트 길이의 총합이 뭔지 이해가 안되요... 예시로 입력과 원하는 출력을 적어보세요. 알 수 없는 사용자 2020.4.21 22:20
- 어떤 문장을 입력하던지 그 문장의 평균길이를 구하고 싶어요! 문장을 split하면 단어끼리 리스트로 나오자나요.그 단어의 길이의 평균을 구하고 싶은건데 입력할 문장이 정해진게 아니니까 리스트를 얼마나 더해야하는지 모르겠어요 알 수 없는 사용자 2020.4.21 23:10
-
댓글 입력