작성
·
65
·
수정됨
0
안녕하세요 실습문제 풀어보다가 질문이 생겨서 남깁니다!
해당 문제인 경우는 팀원의 수가 적어서 3이라는 숫자로 적어서 나누는게 가능했지만,
만약 팀원의 수가 굉장히 많다면 해당 함수는 쓰기 어려워질까요? (어차피 매개변수에 그만큼 나열해야하니 효율성문제로)
sql과 달리 avg라는 연산자가 없는 것 같아서요!
또한 int를 적용하지 않았는데 덧셈연산자가 작동한 이유를 알고 싶습니다! 어렴풋하게만 느낌이 와서 정확히 알고 싶습니다.
답변 2
0
Q. 해당 문제인 경우는 팀원의 수가 적어서 3이라는 숫자로 적어서 나누는게 가능했지만,
만약 팀원의 수가 굉장히 많다면 해당 함수는 쓰기 어려워질까요? (어차피 매개변수에 그만큼 나열해야하니 효율성문제로)
-> AI 인턴이 잘 대답해 줬네요 ㅎㅎ
리스트나 튜플 형태로 매개변수를 받아주고, sum 과 len으로 평균을 구해주면 됩니다
Q. int를 적용하지 않았는데 덧셈연산자가 작동한 이유를 알고 싶습니다!
-> 원래 데이터가 int 형이라서 형변환을 할 필요가 없습니다 ㅎㅎ
0
안녕하세요, 인프런 AI 인턴입니다.
주신 질문에 대해 답변드립니다.
팀원의 수가 매우 많을 경우, 모든 팀원을 매개변수로 나열하는 것은 비효율적이며, 파이썬에서는 이런 경우를 위해 리스트(list) 또는 튜플(tuple) 등의 컬렉션 타입을 사용하여 여러 데이터를 하나의 변수에 저장해 관리할 수 있습니다. 예를 들어, 팀원 전체의 평균을 구하는 경우, 리스트에 팀원들의 값을 저장한 뒤, sum() 함수로 합계를 구하고, len() 함수로 리스트의 길이(팀원의 수)를 구하여 평균을 계산할 수 있습니다.
int를 적용하지 않아도 덧셈 연산자가 작동하는 이유는, 파이썬에서는 숫자 데이터를 자동으로 인식하기 때문입니다. 즉, 파이썬의 변수에 숫자를 할당하면 해당 변수는 자동적으로 정수형(int) 또는 실수형(float)으로 처리됩니다. 따라서 숫자끼리의 덧셈, 뺄셈, 곱셈 등의 연산이 가능합니다. 하지만, 명확한 타입 변환을 위해서는 int()나 float() 같은 함수를 사용하여 형 변환을 명시적으로 진행하는 것이 좋습니다.
간단한 예로, 팀원들의 점수가 리스트에 저장되어 있을 때의 평균을 구하는 코드는 다음과 같습니다.
scores = [90, 85, 70, 100] # 팀원들의 점수 리스트
average_score = sum(scores) / len(scores) # 평균 계산
print(average_score) # 평균 점수 출력
이와 같이 파이썬에서는 다양한 데이터 타입과 내장 함수들을 활용하여 효율적으로 문제를 해결할 수 있습니다.