IT/Python

Python list 주요사항

AsianDude 2023. 11. 25. 23:31

Python list는 유용한 점이 많긴 하다.

 

선언을 a = [] 이런식으로 빈 리스트를 선언 할 수 있고

 - list.pop()

 - list.pop(인덱스번호) => queue처럼 맨 앞에 것을 뽑아낼 수가 있다. 대신 사간 복잡도는 O(n)

 - list.delete() 시간 복잡도 O(n)

 - list.remove() 시간 복잠도 O(n)

위에 처럼 직관 적으로 쓸 수 있다.

 

다만 주의점이 있다. 

만약,

 a = ["a", "b", "c"]

 b = a

 b[1] = "z"

쓰면 a 리스트와 b list 둘다 ["z", "b", "c"]로 변한다. 

b가 a의 참조값을 가리키기 때문에 주의 해야한다.

 

이걸 방지 할려면

 a = ["a", "b", "c"]

 b = a[:] => 쌍따옴표를 붙임으로써 슬라이스 복사한다.

 b[1] = "z"

 

그리고 파이썬에서는 리스트를 [::2] 이런식으로 쓸 수 있는데 3번째에 숫자가 들어가는 것은 얼마나 건너 뛰냐는 뜻이다.

즉[1,2,3,4,5]가 있으면 [1,3,5] 이런식으로 추출이 된다.

 

파이썬에서 리스트를 newlist = [for in list_item if condtion] 아니면 newlist = [item if condtion...else for item in list] 이런식으로 반복문을 안에다 쓸 수 있다.

 

그리고 str_a = "abcd"를 list(a)를 넣으면 char로 리스트화 시킨다.