해결된 질문
작성
·
142
1
안녕하세요. 메서드나 함수를 사용할때 생성되는 데이터에 대한 질문입니다.
리스트에 메서드를 사용할 때에는 기존 데이터가 반환되는 반면에,
함수에 리스트를 집어넣는 경우에는 새로운 데이터가 반환되는 것 같습니다.
제가 이해한 것이 맞나요? 아니면 일일이 암기해야 하나요?
감사합니다.
답변 1
0
질문 감사드립니다.
정확한 함수와 메서드명을 알면 좋을텐데요.
아마, sorted() 와 list.sort() 처럼 같은 동작을하는 함수와 메서드를 말씀하시는 걸로 보입니다.
말씀하신대로 함수는 신규 객체를 생성하여 반환하는 반면에, 메서드는 해당 객체를 직접(in place) 변경합니다.
하지만 이 것이 모든 함수와 메서드에 적용된다는 것은 확실하지 않습니다. 그런 경향이 있지만 언제든지 변경이 될 수도 있기 때문입니다. (가급적 그러지 않겠지만 말입니다.)
따라서, 암기하시기 보다는 필요할 때마다 레퍼런스 문서를 찾아보는 것이 가장 정확합니다.
네, sorted()와 list.sort() 같은 예시가 맞습니다. 다음부터는 확실히 적겠습니다.
설명해 주셔서 감사합니다.