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 = [i for i in list_item if condtion] 아니면 newlist = [item if condtion...else for item in list] 이런식으로 반복문을 안에다 쓸 수 있다.
그리고 str_a = "abcd"를 list(a)를 넣으면 char로 리스트화 시킨다.