리스트
기존에 다루었던 문자열과는 달리 리스트는 데이터의 목록을 다루기 때문에 고정되어 있
지않는 것이 특징.
리스트를 만들 때는 대괄호 []를 사용하며 element들은 어떠한 데이터유형이 와도 표현
이가능하다.예를 들어 학생의 데이터를 처리하고자 할때 한 학생의 데이터는 문자열로
표현이 가능하나, 여러 사람들의 데이터를 처리하고자 할 땐 리스트의 사용이 필수적이다.
예를들어 1000명에대한 성적을 입력해야된다고 한다면 students = [1000]을 통해
인덱스로 관리하는것이 효과적. student = [1000] 은 1000개의 인덱스를 만든다는 것과
같은말이다.
리스트 가공.
2-2 리스트 가공
a = [ 0, 1, ,2,3 ]
1)Slicing : [ x: y ] 로나눌수 있다.
2)결합 : +연산자를 통해 결합할수도 있다.
3)변경 : a[1]=4 >> a = [0, 4, 2, 3 ]
4)len(a) :element의 길이를 알 수 있다.
5).append() : 리스트의 끝에 새 요소를 추가
6).extend() : a.extend( [ 1, 2, 3])꼴로 이어붙임.
7)a.insert (c,d) : a의c인덱스에 데이터 d를 추가
8)Remove(): 입력한 데이터를 리스트에서 찾아 첫 번째 요소 제거.
ex) a.remove(1) : a에서 1을찾아 제거. >> 내용을 찾아 제거할 때 사용하는 메소드
9)pop() : 리스트의 요소를 뽑아내어 리스트에서 제거 >> 특정위치를제거하고 추출
하고 싶을 때 사용.
이러한 함수들은 모두 메소드이므로 list도 객체라는 것을 확인 할 수 있다
중요개념
a =1
b = a
a = 2
b = ? >>> b= 1
a = [3,4,1,2,5]
b=a
a.sort()
a =[1, 2, 3, 4, 5]
b =[1, 2, 3, 4, 5]// 위와 다른 결과값을 보임
리스트는 주소를 저장하고(참조) 숫자는 값을저장하기 때문
a와 b가 같은 곳을 가르키고 있기 때문에 가르키는 값을 변경시키면(a) 다른곳에서 가르키는 곳도(b) 변경된다.
즉 리스트는 참조타입이고참조타입인 경우에는 모두가 다 위와 같은 논리로 구성된다.



덧글