list, 1차원 배열, 2차원 배열, 원소 삽입, 원소 삭제
✔️ 빈 list
N = list()
>> []
N = []
>> []
✔️ 문자열
N = list("List")
>> ['L', 'i', 's', 't']
✔️ 선언
N = [1, 2, 3, 4, 5, 6]
>> [1, 2, 3, 4, 5, 6]
✔️ for
N = [num for num in range(5)]
>> [0, 1, 2, 3, 4]
temp = [1, 1, 1, 3, 1]
N = [num for num in temp]
>> [1, 1, 1, 3, 1]
N = ["A" for _ in range(5)] # range의 수와는 상관없이 리스트를 채움
>> ['A', 'A', 'A', 'A', 'A']
✔️ 조건문
N = [num for num in range(5) if num % 2 == 0]
>> [0, 2, 4]
temp = [1, 1, 1, 3, 1]
N = ["일" for num in temp if num == 1]
>> ['일', '일', '일', '일']
✔️ 선언
N = [[1, 2, 3], [4, 5, 6]]
>> [[1, 2, 3], [4, 5, 6]]
✔️ for
N = [[num1 for num1 in range(3)] for num2 in range(2)]
>> [[0, 1, 2], [0, 1, 2]]
N = [[(num1+1)*(num2+1) for num1 in range(3)] for num2 in range(2)]
>> [[1, 2, 3], [2, 4, 6]]
N = [[0]*3 for _ in range(2)]
>> [[0, 0, 0], [0, 0, 0]]
✔️ 곱셉 *
얕은 복사로 인해 각 요소들이 같은 객체를 가리킴
N = [[0, 1]] * 3
>> [[0, 1], [0, 1], [0, 1]]
N[1][1] = 3
>> [[0, 3], [0, 3], [0, 3]]
N = [[0] * 2] * 3
>> [[0, 0], [0, 0], [0, 0]]
N[1][1] = 3
>> [[0, 3], [0, 3], [0, 3]]
✔️ 직접 삽입
N = [1, 2, 3, 4] + ["q"]
>> [1, 2, 3, 4, 'q']
✔️ append
N = [1, 2, 3, 4]
N.append("q")
>> [1, 2, 3, 4, 'q']
✔️ insert
N = [1, 2, 3, 4]
N.insert(2, "q")
>> [1, 2, 'q', 3, 4]
N.insert(4, 'q')
>> [1, 2, 3, 4, 'q']
✔️ extend
N1 = [1, 2, 3, 4]
N2 = [10, 11, 12]
N1.extend(N2) # 2개의 리스트 합치기
>> [1, 2, 3, 4, 10, 11, 12]
✔️ remove
N = [1, 2, 3, 4, 5]
N.remove(3) # 해당하는 원소 삭제
>> [1, 2, 4, 5]
✔️ del
N = [1, 2, 3, 4, 5]
del N[2] # 해당하는 인덱스 삭제
>> [1, 2, 4, 5]
✔️ pop
N = [1, 2, 3, 4, 5]
N.pop(2) # 해당하는 인덱스 삭제
>> [1, 2, 4, 5]
N.pop() # 마지막 원소 삭제
>> [1, 2, 3, 4]
✔️ clear
N = [1, 2, 3, 4, 5]
N.clear() # 초기화
>> []