• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

메서드와 함수를 사용하여 생성되는 데이터

21.03.03 21:39 작성 조회수 84

1

안녕하세요. 메서드나 함수를 사용할때 생성되는 데이터에 대한 질문입니다.

리스트에 메서드를 사용할 때에는 기존 데이터가 반환되는 반면에, 

함수에 리스트를 집어넣는 경우에는 새로운 데이터가 반환되는 것 같습니다.

제가 이해한 것이 맞나요? 아니면 일일이 암기해야 하나요?

감사합니다.

답변 1

답변을 작성해보세요.

0

질문 감사드립니다.

정확한 함수와 메서드명을 알면 좋을텐데요.

아마, sorted() 와 list.sort() 처럼 같은 동작을하는 함수와 메서드를 말씀하시는 걸로 보입니다.

말씀하신대로 함수는 신규 객체를 생성하여 반환하는 반면에, 메서드는 해당 객체를 직접(in place) 변경합니다. 

하지만 이 것이 모든 함수와 메서드에 적용된다는 것은 확실하지 않습니다. 그런 경향이 있지만 언제든지 변경이 될 수도 있기 때문입니다. (가급적 그러지 않겠지만 말입니다.)

따라서, 암기하시기 보다는 필요할 때마다 레퍼런스 문서를 찾아보는 것이 가장 정확합니다. 

이동현님의 프로필

이동현

질문자

2021.03.03

네, sorted()와 list.sort() 같은 예시가 맞습니다. 다음부터는 확실히 적겠습니다.

설명해 주셔서 감사합니다.