Study

[혼자 공부하는 파이썬] Chapter04 반복문 - 1.리스트와 반복문

이웃비 2021. 4. 1. 23:43

 

**
스터디하면서 이미 알고 있는 부분들은 제외하고 기록하고 싶은 부분만 업로드하기 때문에 책 내용과 순서가 다를 수 있습니다

 

리스트 선언하고 요소에 접근하기

리스트는 대괄호[]에 자료를 쉼표로 구분해서 입력한다. 대괄호에 넣는 자료를 요소라고 하고 영어라는 element라고 한다. 그리고 대괄호 안에 들어간 숫자를 인덱스라고 부른다.

리스트의 사용

1. 대괄호 안에 음수를 넣으면 뒤에서부터 선택된다

    list_a = [273, "hello", Ture]

    list_a[-1] -->True

2. 리스트 접근 연산자를 이중으로 사용할 수 있다.

    list_a = [273, "hello", Ture]

    list_a[2][0] --> 'h'

3. 리스트 안에 리스트를 쓸 수 있다

    list_a = [[1,2,3],[4,5,6]]

    list_a[1][1] --> 5

** 이때 list_a[3] 하면 요소가 존재하지 않으므로 IndexError가 난다.

 

 

리스트 연산자: 연결(+), 반복(*), len()

len() 함수는 괄호에 문자열을 넣으면 문자열의 수를 반환하지만, 리스트 변수에 넣으면 리스트 요소의 개수를 세어준다.

## 리스트 연산자

# 리스트를 선언합니다
list_a = [1, 2, 3]
list_b = [4, 5, 6]

# 출력합니다
print("# 리스트")
print("list_a = ", list_a) # list_a =  [1, 2, 3]
print("list_b = ", list_b) # list_b =  [4, 5, 6]
print()

# 기본 연산자
print("# 리스트 기본 연산자")
print("list_a + list_b =", list_a + list_b) # list_a + list_b = [1, 2, 3, 4, 5, 6]
print("list_a * 3 =", list_a * 3) # list_a * 3 = [1, 2, 3, 1, 2, 3, 1, 2, 3]
print()

# 함수
print("# 길이 구하기")
print("len(list_a) =", len(list_a)) # len(list_a) = 3

 

리스트에 요소 추가하기: append, insert

len() 함수는 괄호에 문자열을 넣으면 문자열의 수를 반환하지만, 리스트 변수에 넣으면 리스트 요소의 개수를 세어준다.

## 리스트에 요소 추가하기

# 리스트를 선언합니다
list_a = [1, 2, 3]

# 리스트 뒤에 요소 추가하기
print("# 리스트 뒤에 요소 추가하기")
list_a.append(4)
list_a.append(5)
print(list_a) # [1, 2, 3, 4, 5]
print()

# 리스트 중간에 요소 추가하기
print("# 리스트 중간에 요소 추가하기")
list_a.insert(0, 10)
print(list_a) # [10, 1, 2, 3, 4, 5]

 

** 파괴적 연산과 비파괴적 연산

list_a = [1, 2, 3]
list_b = [4, 5, 6]

# 비파과적 연산
print(list_a + list_b)

# 파괴적 연산
list_a.extend(list_b)
print(list_a)

# 결과는 둘다 [1, 2, 3, 4, 5, 6] 로 같지만, list_a는 extend해줄때 완전히 바뀌게 된다.

 

리스트에 요소 제거하기

## 리스트 요소 제거 

list_a = [0, 1, 2, 3, 4, 5]
print("# 리스트의 요소 하나 제거하기")

# 제거방법[1] - del
del list_a[1]
print("del list_a[1]:", list_a)  # [0, 2, 3, 4, 5]

# 제거방법[2] - pop()
list_a.pop(2)
print("pop(2):", list_a) # [0, 2, 4, 5]

# 제거방법[3] - remove
list_a.remove(5)
print("list_a.remove(3):", list_a) # [0, 2, 4]

# 제거방법[4] - clear
list_a.clear()
print("list_a.clear:", list_a) # []

 

리스트에 내부에 있는지 확인하기: in/not in 연산자

형식 : 값 in 리스트

리턴 : 불자료형(true or false)가 나옴

## for 반복문과 리스트 

for i in range(10): # range(100)는 for반복문과 함께 많이 사용되는 범위 자료형입니다
    print("출력")


# 리스트를 선언합니다
array = [273, 32, 103, 57, 52]

# 리스트에 반복문을 적용합니다
for element in array:
    # 출력합니다
    print(element)
    

 

 

 

 

 


출처 : 윤인성혼자 공부하는 파이썬, 한빛미디어, 2021