; 여러가지 자료를 저장할 수 있는 자료로, 대괄호[ ] 내부에 여러 종류의 자료(요소, element) 를 넣어 선언
요소가 존재하지 않는 위치에서 요소를 꺼낼 때 IndexError
발생
바보1) 1:3은 되면서 왜 2:3은 안되지? -> 마지막 요소는 불포함
0:1 왜 안 먹히냐 맨 첫번째 요소라서 선택 안되는 건가
; 리스트에 [:] 연산자로 리스트 범위를 지정하여 여러 요소를 선택
; remove() 함수 사용
; 리스트 내부 요소 모두 제거 clear()함수 사용
; sort()
문자가 포함된 리스트에서 적용 불가능
--------- >>> 여기까지 파괴적 동작
; in / not in
; for 반복자 in 반복할 수 있는 것: 코드 ~
; list_of_list
2차원 리스트에 반복문 두번 사용하기
; 기호 * 사용
list_of_list = [[0]*5]*5
for itmes in list_of_list:
print(itmes)
실제 출력결과
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
하지만 나는 이 때 출력결과를
[1, 1, 1, 1, 1]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0]
이렇게 바꾸고 싶어
파이썬의 리스트 컴프리헨션(List Comprehension)은 기존 리스트를 기반으로 새로운 리스트를 간결하고 효율적으로 생성하는 문법입니다. 기존의 for 루프보다 코드를 최대 70% 단축시키면서도 가독성을 유지하는 특징이 있습니다.
핵심 구조와 작동 원리
[표현식 for 요소 in 반복가능객체 if 조건식]
기본 예시 비교
squares = []
for num in range(1,6): # 1~6까지 출력할건디 물론 마지막 요소인 6은 미포함
squares.append(num ** 2) # 제곱해서 출력해라
출력결과: [1, 4, 9, 16, 25]
squares = [num ** 2 for num in range(1, 6)]
출력결과: [1, 4, 9, 16, 25]
하 어렵다이ㅠ
파이썬의 리스트랑 자바 배열이랑 뭐가 다르게
자바 배열 선언할 때 자료형 한 가지로만 선언해야 하는데, 파이썬의 리스트 선언할 때는 자료형 상관없이 [23,chill,10.1] 해도 선언이 쌉가능
아 이때 2주차에서 애먹었던 자료형의 유연성이 돋보이는듯
https://june-coder.tistory.com/3
https://stackoverflow.com/questions/12791501/why-does-this-code-for-initializing-a-list-of-lists-apparently-link-the-lists-to