[Python] 리스트(List)관련 자주 쓰이는 기능 정리

2023. 3. 14. 16:06·개발일기/Python

● Python에서 list란?

→  정보 여러 개를 하나로 묶어 저장하고 관리할 수 있는 기능

→  숫자 여러개는 파이썬의 리스트 기능을 이용하면 쉽게 관리 가능

→  리스트는 대괄호[] 안에 정보 여러개를 쉼표(,)로 구분하여 적는다.

 

◆ 리스트에서 자주 쓰이는 기능

♥ len(A)

: 리스트길이(자료 개수)를 구한다.

ex) len(A), len( [1, 2, 3] )

 

♥ append(x)

: 자료 x를 리스트의 맨 뒤에 추가한다.

ex) A.append(4)

 

♥ insert(i,x) 

: 리스트의 i번 위치에 x를 추가한다.

ex) A.insert(0, 5) #0번 위치에 원소5를 추가한다.

 

♥ pop(i)

: i번 위치에 있는 자료를 리스트에서 빼내면서 그 값을 함수의 결과값으로 돌려준다. i를 지정하지 않으면 맨 마지막 값을 빼서 돌려준다. 스택과 큐에 적합하다

ex) A.pop()

 

♥ clean()

: 리스트의 모든 자료를 지운다.

ex) A.clean()

 

♥ del A[:]

: del은 실무에서 많이 사용, 범위 지정가능

ex) del A[1:3]

 

♥ x in A

: x가 리스트 A안에 있는지 확인한다. (x not in A는 반대결과)

ex) 2 in A

◆ del , pop , remove 차이점

예를 들어 리스트 a = [1,2,3,4,5,3]이 있다고 하자

a.remove(3)   #a = [1,2,3,4,5,3]
v = a.pop()   #a = [1,2,4,5]이고 v=3
a.pop(i)      #a = [1,4,5]
del a[0]      #a=[4,5]
del a         #리스트가 없어진다.

◆ extend , append 차이점

→ 사실상 둘은 선호도의 문제?라고 할 수 있다. 

a = [1,2,3]
a.extend(4) #error!
b = [1,2,3]
b.append(4) #b=[1,2,3,4]
c = [1,2,3]
c.extend([4]) #c=[1,2,3,4]
d = [1,2,3]
d.append([4]) #d=[1,2,3,[4]]

append는 원소를 추가하고 extend는 리스트를 더한다. 

* [1] * 5 = [1,1,1,1,1] 가능

a = [1,2,3]
b = [4,5]
a = a + b #두 리스트를 더해 새 리스트를 만든다(c = a+b)
a.extend(b) #새로운 리스트를 기존 리스트에 붙인다.

비슷해보이지만 알고리즘 부분에서는 extend가 효율적이라고 한다!

728x90
저작자표시 변경금지 (새창열림)

'개발일기 > Python' 카테고리의 다른 글

[Python] 기본적인 자료구조 - 그래프(Graph)  (0) 2023.04.24
[Python] 알고리즘 효율성 분석  (0) 2023.04.24
[Python] 알고리즘 - 최대 공약수 구하기(유클리드 알고리즘)  (0) 2023.03.14
[Python] 알고리즘 - 최대값찾기  (0) 2023.03.14
[Python] 기본적인 자료구조 - 리스트(list), 스택, 큐  (0) 2023.03.14
'개발일기/Python' 카테고리의 다른 글
  • [Python] 알고리즘 효율성 분석
  • [Python] 알고리즘 - 최대 공약수 구하기(유클리드 알고리즘)
  • [Python] 알고리즘 - 최대값찾기
  • [Python] 기본적인 자료구조 - 리스트(list), 스택, 큐
코딩하는빵친자
코딩하는빵친자
안녕하세요 코딩하는 빵친자입니다. 말그대롭니다.
  • 코딩하는빵친자
    코딩하는 빵친자의 블로그
    코딩하는빵친자
  • 전체
    오늘
    어제
    • 분류 전체보기 (55)
      • 개발일기 (41)
        • Python (9)
        • Swift (2)
        • DataBase (0)
        • 알고리즘 (0)
        • IOS (30)
      • 데보션 영 (4)
      • 코테 (10)
        • Swift (10)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    ios개발
    podinstall오류
    Rosetta
    delegate패턴
    추적권한
    뷰관련메서드
    제스처인식
    pod
    SWIFT
    settransition
    arm7
    uikit
    ios스와이프
    xcode
    buildsetting
    universalapp
    podlock
    uipangesture
    IOS
    아웃링크
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
코딩하는빵친자
[Python] 리스트(List)관련 자주 쓰이는 기능 정리
상단으로

티스토리툴바