Ch 7. 리스트

2025. 7. 2. 14:55·Coding/Python
  • 리스트 생성
list_a = [a1, a2, a3]

 

  • 인덱싱

왼쪽(앞)부터 순서대로 [0], [1], [2], ...

오른쪽(뒤)부터 순서대로 [-1], [-2], [-3], ... 

list_a[0] == a1
list_a[1] == a2
list_a[2] == a3

list_a[-1] == a3
list_a[-2] == a2

 

  • 주요 메소드
list_a.append(a4) # 가장 끝에 항목 추가
# list_a = [a1, a2, a3, a4]

list_a.insert(2, k) # 인덱스에 항목 추가 (IndexError 발생 X)
# list_a = [a1, a2, k, a3, a4]

x = list_a.pop() # 인덱스의 항목을 반환하고 리스트에서 제거
# x = a4
# list_a = [a1, a2, k, a3]

list_b = [b1, b2, b2, b3, b4]
num_b2_index = list_b.index(b2) # 처음 나타나는 항목의 인덱스 반환
# num_b2_index = 1
list_b.remove(b2) # 처음 나타나는 항목을 제거
# list_b = [b1, b2, b3, b4] (list_b[1]의 b2가 제거됨)

list_n = [1, 4, 3, 2, 5, 8]
list_n.sort() # 오름차순 정렬. reverse=True -> 내림차순
# list_n = [1, 2, 3, 4, 5, 8]

 

  • 리스트 관련 내장 함수
len(list) # 리스트의 길이 반환 (== 마지막 인덱스 + 1)
sum(list) # 합계 반환 (자료형이 숫자인 경우에만 가능)
max(list) # 최댓값 반환, 자료형이 문자열인 경우 알파벳 순서가 가장 뒤인 문자열 반환
min(list) # 최솟값 반환, 자료형이 문자열인 경우 알파벳 순서가 가장 앞인 문자열 반환
sorted(list) # 오름차순으로 정렬된 리스트 반환

- list.sort(): 원본 리스트를 정렬

- sorted(list): 정렬된 리스트를 반환

 

  • 슬라이싱
리스트[시작값:종료값:증가량]

리스트의 인덱스를 범위지정

- range 와 동일한 방식. 시작값부터 종료값-1 인덱스까지 증가량 간격으로 리스트를 추출 (새로운 리스트로 생성)

 

  • 얕은 복사 / 깊은 복사

- 얕은 복사 (shallow copy)

얕은 복사는 동일한 메모리 주소를 가리키게 함 (실제로 서로 같은 리스트임)

list_a = [1, 2, 3, 4]
a_copy = list_a

- a_copy를 변경하면 list_a도 바뀜. list_a를 변경하면 a_copy도 바뀜.

 

- 깊은 복사 (deep copy)

깊은 복사는 새로운 메모리 주소에 리스트를 생성하게 함 (실제로 서로 다른 리스트임)

list_a = [1, 2, 3, 4]
a_copy1 = list(list_a)
a_copy2 = list_a[:]

- a_copy를 변경하더라도 list_a가 바뀌지 않음. list_a를 변경하더라도 a_copy가 바뀌지 않음.

- a_copy2는 슬라이싱을 활용한 방법

 

  • 함축
[표현식 for 항목 in 리스트 if 조건]

 

- 예시 (1부터 10까지 짝수의 제곱)

list_num = [x**2 for x in range(1,10+1) if x % 2 == 0]
# list_num = [4, 16, 36, 64, 100]

 

  • 2차원 리스트

리스트 안에 리스트가 존재하는 형태

- 리스트[행인덱스][열인덱스] 로 항목에 접근 가능

a = [[1, 2], [3, 4]]

# a = [1  2]
#	  [3  4]

a[0][0] == 1
a[0][1] == 2

'Coding > Python' 카테고리의 다른 글

Ch 9. 문자열  (0) 2025.07.03
Ch 8. 튜플, 세트, 딕셔너리  (0) 2025.07.03
Ch 6. 함수  (0) 2025.04.21
Ch 4. 조건문 / Ch 5. 반복문  (0) 2025.04.20
Ch 3. 수식과 연산자  (0) 2025.04.20
'Coding/Python' 카테고리의 다른 글
  • Ch 9. 문자열
  • Ch 8. 튜플, 세트, 딕셔너리
  • Ch 6. 함수
  • Ch 4. 조건문 / Ch 5. 반복문
rlarudfhr
rlarudfhr
  • rlarudfhr
    androcom
    rlarudfhr
  • 전체
    오늘
    어제
    • 분류 전체보기 (96)
      • Coding (28)
        • Python (10)
        • C (13)
        • Github & Git (2)
        • WEB FE (3)
      • Mathematics (3)
        • 미적분학 (19)
        • 통계학 (16)
        • 선형대수 (10)
      • Quantum Computing (0)
      • PC & Mobile & Audio (7)
      • Etc (13)
  • 링크

    • Github
    • Baekjoon
    • Instagram
  • 공지사항

  • 인기 글

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
rlarudfhr
Ch 7. 리스트
상단으로

티스토리툴바