[python] list

J·2021년 2월 11일
0

python

목록 보기
7/11

python을 사용하면서 가장 많이 사용하는 자료구조가 list가 아닐까 싶다.
python list를 사용하면서 기본적이지만 유용한 그리고 헷갈리는 메소드들을 정리해보았다.

1. list 원소 추가

append, extend, insert

  • append : 리스트 마지막에 원소를 하나 삽입한다.
a= [i for i in range(5)]
# a =[0,1,2,3,4]
a.append(5)

# a = [0,1,2,3,4,5]
  • extend : 리스트 마지막에 list내부의 원소를 더한다.
a= [i for i in range(5)]
# a =[0,1,2,3,4]
add_list = [5]
a.extend(add_list)

# a = [0,1,2,3,4,5]
  • insert : 원하는 index에 원소를 하나 삽입한다.
a= [i for i in range(5)]
# a =[0,1,2,3,4]
a.insert(1,5)

# a = [0,5,1,2,3,4]

2. list 원소 제거

remove, del, pop

  • remove : 특정한 값을 갖는 원소를 제거한다. 해당 값을 갖는 원소가 여러개라면 가장 앞에 있는 원소를 제거한다.
a = [0,1,2,0,1,2]
a.remove(2)

# a= [0,1,0,1,2]
  • del : 특정한 값을 지정하여 제거한다.
a = [0,1,2,0,1,2]
del a[4]

# a= [0,1,2,0,2]
  • pop : index를 이용하여 특정한 값을 지정하여 제거하고, 해당되는 값을 반환한다.
a = [0,1,2,0,1,2]
out = a.pop(3)

# a = [0,1,2,1,2]
# out = 0

3. list 정렬

sort, sorted, reverse, reversed

  • sort : list method로써 원소들을 정렬. default값은 오름차순 정렬이며 reverse=True argument를 이용하여 내림차순으로 정렬이 가능하다.
a = [1,9,3,8,4,6]
a.sort()
# a = [1, 3, 4, 6, 8, 9]
  • sorted : 함수로써 원소들을 정렬. sort와 마찬가지로 default값은 오름차순 정렬이며 reverse=True argument를 이용하여 내림차순으로 정렬이 가능하다. 정렬된 list를 반환한다. 정렬 전의 값을 유지할 수 있다.
a = [1,9,3,8,4,6]
sorted_a = sorted(a)

# a = [1, 9, 3, 8, 4, 6]
# sorted_a = [1, 3, 4, 6, 8, 9]
  • reverse: list method로써 list 원소들을 역순으로 배열한다.
a = [1,9,3,8,4,6]
a.reverse()
# a = [6, 4, 8, 3, 9, 1]
  • reversed : 함수로써 argument list를 역순으로 배열한다. list_reverseiterator 객체를 반환한다. sorted와 같이 사용하기 위해서는 list함수를 추가적으로 사용해야한다.
a = [1,9,3,8,4,6]
reversed_a = reversed(a)

# a = [1, 9, 3, 8, 4, 6]
# reversed_a = <list_reverseiterator object at 0x0000016F027138B0>
# list(reversed_a) = [6, 4, 8, 3, 9, 1]

4. list 관련 유용한 기능

max, min, index

  • max : list의 원소 중 최대값을 반환
a= [i for i in range(5)]
# a =[0,1,2,3,4]
max_val = max(a)

# max_val = 4
  • min : list의 원소 중 최소값을 반환
a= [i for i in range(5)]
# a =[0,1,2,3,4]
min_val = min(a)

# min_val = 0
  • index : 입력으로 받은 값을 가지는 가장 작은 index를 반환
a = [2,3,4,2,3,4]
val = a.index(3)

# val = 1

Reference

  1. https://brownbears.tistory.com/452
  2. https://rfriend.tistory.com/330
  3. https://itholic.github.io/python-reverse-reversed/
profile
I'm interested in processing video&images with deeplearning and solving problem in our lives.

0개의 댓글