리스트
파이썬의 대표적인 컨테이너형 자료구조이다.
쉼표로 구분 지은 값에 대괄호를 친다.
1. 리스트 요소 호출은 인덱스를 통해 호출할 수 있다.
2. 음수 인덱스는 리스트의 끝에서부터 시작한다.
3. len()을 통해 리스트의 길이를 알 수 있다.
4. 리스트는 여러 타입의 객체를 포함할 수 있다.
List = ["a", 1, 2]
List[0] #"a"
List[-1] #2
len(List) #3
리스트는 가변적이기에 요소를 바꾸거나 추가할 수 있다.
하지만 가변적이므로 하나의 이름으로 객체를 수정했을 시, 다른 이름으로 가리키는 객체도 수정된다.
즉 왼쪽의 경우 list2가 list1로 초기화했기에 list2에 추가한 "D"값이
list1에도 똑같이 추가되어 같은 값을 가지는 경우이다.
리스트의 내장 함수로는 len, sum, max, min 등이 있다.
리스트를 순회할 때는 for문을 사용한다.
list=[1,2,3]
for i in list:
print(i)
-> 1
2
3
리스트는 sort()로 정렬을 할 수 있다.
reverse를 사용하면 리스트를 뒤집을 수 있다.
추가로 sort에 reverse 옵션을 사용해 오름차순, 내림차순도 정할 수 있다.
또한 리스트는 슬라이싱을 통해 특정 인덱스를 선택해 새로운 리스트를 생성할 수 있다.
위의 예시는 금, 은, 동, 나라를 table이라는 리스트에 순회를 통해 추가하여
오름차순 정렬 후 뒤에서 10개 즉 상위 10개의 나라를 슬라이싱한 후
reverse하여 최종적으로 올림픽 순위 10위까지를 구하는 것이다.
참고로 sort의 기준은 금,은,동,나라 순으로 우선 순위가 정해져있다.
리스트의 메소드는 보통 이정도를 많이 사용한다.
모두 알아두어야 파이썬을 사용할 때 용이하다.
문자열, 튜플
이 둘 모두 리스트와 같이 for문으로 순회가 가능하다.
왼쪽의 경우 문자열, 오른쪽의 경우 튜플의 예시이다.
하지만 문자열과 튜플은 가변적이지 않다.
그렇기에 인덱스를 통해 접근하여 값을 바꿀 수 없다.
또한 list(), tuple()을 통해 형변환이 가능하다.
이런식으로 나라,금,은,동을 각각 리스트로 사용하지 않고 위와 같이 튜플들의 리스트를 활용한다.
그렇기 위해서는 형변환도 할 수 있어야 한다.
앞의 내용들을 활용해서 소수를 구하는 함수, 피보나치 수열을 구하는 함수 등 다양한 형태로 활용이 가능하다.
이러한 알고리즘적 사고를 키우기 위해서는 백준 사이트에서 다양한 분야의 문제를 풀어보는 것을 추천한다.
'대학교' 카테고리의 다른 글
한국 근현대사 - (7) 6.25 전쟁 이후 (1) | 2023.11.08 |
---|---|
데이터구조 - (6) 우선순위 큐:힙 (1) | 2023.11.08 |
마이크로프로세서 - (8) 인터럽트 (2) | 2023.11.06 |
한국 근현대사 - (6) 대한민국 (1) | 2023.11.05 |
한국 근현대사 - (5) 식민지 시기 -2 (1) | 2023.11.05 |