4-1 리스트
변수에서 데이터는 하나의 공간에 하나만 담을 수 있음
>> 여러 데이터를 한꺼번에 저장하거나 데이터 간관계 저장을 위한 저장공간인 자료구조가 필요함
리스트 : 순서가 있는 변수들의 나열
요소 : 리스트를 이루는 값으로 모든 자료를 사용 가능
인덱스 : 요소들의 순서에 따른 번호로 0부터 시작
리스트로 과일 모음 표현하기
mix의 1의 요소값을 나타내려면?
banana의 b를 구하려면?
<실행 결과>
['apple', 'banana', 'carrot', 0, 'a', 'apple', [1, 2, 3], ['apple', 'banana', 'fruit']]
['apple', 'banana', 'carrot', 'apple', 'banana', 'carrot', 'apple', 'banana', 'carrot']
1
b
리스트를 더하거나(+) 반복하기(*)
<실행 결과>
[1, 2, 3]
[1, 2, 3, 3, 5, 6] >> 오름차순으로 나온다
[1, 2, 3, 1, 2, 3, 1, 2, 3] >> 그대로 반복된다
- 리스트에서 사용하는 함수
append() 기존의 리스트에 값을 추가(맨 뒤에)
insert(a,b) 원하는 위치에 값을 추가(a-위치,b-값)
extend(c) 리스트 c의 모든 항목을 추가(마지막에 추가한다)
+ 리스트에 값을 추가적으로 입력(insert,append 대신 사용한다
index(a) 항목 a의 위치를, 두개 이상일 경우 앞에 있는 항목의 index를 리턴함
<실행 결과>
copy() 새로운 리스트를 만들어서 값을 할당
<실행 결과>
['apple', 'banana', 'carrot']
['apple', 'banana', 'carrot']
['apple', 'banana', 'melon']
['apple', 'banana', 'melon']
※y에 리스트(fruit)를 할당하면 리스트 주소값이 복사됨 = 같은 주소값= fruit과 y가 같은 메모리 공간 사용
그래서 y만 대체되는 것이 아닌 fruit도 같이 바뀜 따라서 copy를 사용해야 하나의 값만 바꿀 수 있음
pop(i) 리스트에서 i번째 항목을 가져오고 해당 항목을 리스트에서 지움, i의 값이 없는 경우 리스트에서 맨 끝 항목을 가져오고, 해당 값 삭제
remove(a) 리스트에서 1번째 값(a)을 지움, 값이 없는 경우에는 에러 발생
clear() 리스트 안의 모든 항목 삭제
del 리스트를 메모리에서 삭제
sort() 리스트 정렬(오름차순)
reverse() 리스트 역순 정렬(내림차순)
sum() 리스트 내 항목의 합
max() 리스트의 최대값
min() 리스트의 최소값
len() 리스트 항목의 개수
4-2 튜플
튜플은 리스트와 비슷하게 순서가 있는 자료들의 나열
[] 대괄호 대신 () 괄호 사용
읽기 전용으로 append, remove, sort 등 수정 불가능
리스트의 가장 큰 차이점은 값을 변화시킬 수 있는가의 여부
값을 변화시킬 수 없는 튜플은 데이터 접근속도가 빠름
튜플이 하나의 요소를 가지는 경우 반드시 콤마(,)를 사용해야함 그렇지 않으면 type을 문자열로 인식함
<실행 결과>
<class 'tuple'>
<class 'str'>
- 패킹과 언패킹
패킹 : 한 데이터 내에 여러 데이터를 넣는 것
언패킹 : 한 데이터에서 여러 데이터를 꺼내는 것
<실행 결과>
apple
banana
carrot
apple
['banana', 'carrot']
- 변수 a,b의 값을 바꾸는 프로그램 기능
이것도 튜플을 이용하여 쉽게 바꿀 수 있다
<실행 결과>
1 2
2 1
'공부 > 【Python】' 카테고리의 다른 글
【파이썬프로그래밍】 6주차-제어문과 연산자 (0) | 2024.05.09 |
---|---|
【파이썬프로그래밍】 3주차-변수와 기본연산자 (0) | 2024.05.08 |
【파이썬프로그래밍】 5주차-딕셔너리와 집합 (0) | 2024.05.08 |
【파이썬프로그래밍】 2주차-표준입출력 (0) | 2024.05.07 |
【Python】 파이썬과 데이터마이닝-목차 (0) | 2024.05.06 |