본문 바로가기

분류 전체보기34

13. 리스트(List) 2 - 얕은 복사, 깊은 복사 우선 이글을 읽기전 참조값에 대해 다시 한번 개념 확인 후 읽기를 바란다. 참조값은 메모리에서 리스트 객체의 주소값을 의미한다. 변수 값이 저장되는 순서 : 값(Value) -> 참조값(Reference) -> 메모리(Memory) 얕은 복사(Shallow copy) Python의 list 변수의 가장 큰 특징 리스트 개체를 직접 저장하지 않는 다는 점이다. 다른 곳에 저장되고 리스트의 참조값(reference)만 변수에 저장된다. 복사에 대한 일반적인 정의를 먼저 알아보자. Ctrl+C , Ctrl+V를 우리는 통상 복사, 붙여넣기라 한다. A라는 파일을 복사한 후 붙여넣기하면 A와 동일하지만 이름만 다른 파일인 A_1이 생겨난다. 이때, 생김새만 동일하고, A를 수정한다고 해서 A_1이 수정되지 않는.. 2022. 1. 30.
12. 리스트(List) 1 - 리스트와 시퀀스(sequence) 만약 30명의 학생들의 성적 평균을 계산하기 위해 일일이 모든 변수마다 성적을 대입하면 어떻게 될까? 굉장히 불편하다. 따라서 쉽게 대량의 데이터를 저장할 수 있는 공간과, 쉽게 데이터들을 처리할 수 있는 방법으로 만들어진 것이 리스트 이다. 리스트의 장점 여러 데이터들이 하나의 이름을 공유하고 단지 번호(인덱스)만 다르다면, 아주 쉽게 기억할 수 있고 사용할 수 있다. Python의 리스트는 다른 언어의 배열(array)와 유사하나, 배열은 크기가 고정되어 있는 반면, 리스트의 크기는 가변적이다. 또한 배열은 같은 데이터 타입만 저장이 가능하나, 리스트는 여러 데이터 타입 형태를 섞어서 저장할 수 이있다. 리스트의 요소 리스트에 저장된 데이터를 리스트 요소(array element), 각 요소의 번호를.. 2022. 1. 23.
11. 함수(function) 4 - 람다식(무명 함수), 모듈 무명 함수의 이름보다 람다식으로 널리 알려진 무명 함수는 이름이 없고 몸체만 있는 간략화된 함수이다. python에서 무명함수의 표현은 lambda 키워드로 만들어 진다. 기본 함수와 람다식의 공통점은 다음과 같다. 여러개의 인수를 가질 수 있다. 기본 함수와 람다식의 차이점은 다음과 같다. 반환값은 하나만 존재 return 키워드 필요 없고 항상 반환되는 수식만 적어주면 됨. print()함수를 사용할 수 없음 자신만의 이름 공간을 가지고 있어 전역변수 참조 불가 람다식의 구조 lambda(인수1,...,인수n : 수식) 람다식과 일반 함수 비교 (동일 결과) ### 람다식 ### sum = lambda x, y : x+y print("합 계산: ", sum(10,20)) # 합 계산 : 30 ### .. 2022. 1. 23.
10. 함수(function) 3 - 참조 값, 지역 변수, 전역 변수 아마 함수가 궁금하여 이 글을 들어오셨을 듯 한데, 이글을 읽기전 반드시 알아야 할 개념을 강제로 보여드리겠다. 참조 값 : 객체가 메모리를 생성했을 떄 메모리와 연결된 유일한 숫자 값이다. 즉, 메모리에 저장된 객체의 유일한 숫자갑이 객체의 주소가 된다. 만약 컴퓨터가 동일한 객체를 불러온다 했을 때, 이 객체의 주소로 동일한 객체에 해당하는 값을 찾아온다. 만약 기존의 객체 값을 어떤 함수를 이용해서 10을 곱하는 함수를 만들고 싶다고 하자. 여기서 기존의 객체 값은 k이며, 1이 대입되어 있다. k = 1 def modify(n) : n = n * 10 return(n) # modify(k) 결과 : 10 # k 결과 : 1 위의 함수에서 우리는 당연히 modify 함수 인자에 k가 삽입되면 mod.. 2022. 1. 23.