코드제로 강의자료 – 2강. 리스트, 딕셔너리, 튜플, 셋

1.리스트

리스트는 1)순서가 있는, 2) 여러 개의 데이터를 다루는 데 쓰인다. 형식은 아래와 같이 각 요소들을 콤마(,)로 연결해 주고 대괄호로 감싸면 된다.

a = [0,1,2,3]
b = []

리스트 안에서 내가 원하는 요소들만 빼 내는 것도 가능하다. 먼저 아래 리스트에서 3만 빼내려면 아래와 같이 3에 해당하는 오프셋(offset)을 지정해주면 된다.

alist = [5,3,6,7,8]
k = alist[1]  # alist에서 offset 1에 해당하는 값
print(k)   #3

아래 리스트에서 5번째부터 8번째 요소까지만 추출하고 싶으면 아래와 같이 하면 된다.

list [ 시작offset : 끝offset ]

alist = [5,3,6,7,8,10,13,52,19,4,6]
print(alist[ 4 : 7 ])     # 8,10,13,52

리스트에서 요소를 추가하거나 제거할 수도 있다.

# 리스트에 추가
alist = []
alist.append(1,[2])

# 리스트에서 요소 제거
alist.remove(1)

이 기능이 자주 쓰이는 이유는, 코딩에서 어떤 주어진 조건을 만족하는 값들을 차곡차곡 리스트에 담을 때 쓰이는 기능이기 때문이다.

[QUIZ 1] 다음 빈 칸에 들어갈 알맞은 코드를 완성하여 items 리스트를 완성, 출력하시오.

items = ['소드', '레이저총', '활']
# 유저가 '도끼'를 획득했습니다. 
_____________________________________
print(__________)

# 유저가 '레이저총'을 뺏겼습니다. 
_____________________________________
print(____________)

아래는 어떤 공장에서 생산하는 제품의 완성도 데이터이다.

comp_data = [90, 90.2, 98, 95,6, 94, 89.3, 88, 91,3, 98.2, 97, 88.7, 89, 89, 88, 92, 93, 94, 92, 92.1, 89.9, 91.5, 92, 95.4, 98.2, 97, 97.6, 89, 88.6, 99.2, 95.3, 85.6, 88.3, 93.5, 96, 94, 94.5, 99, 92.4, 97, 97.4, 98, 95.7, 92, 94.1, 97, 96.7, 94, 93.5, 87, 99.3, 98, 95.7, 92, 94.1, 97, 96.7]

한 눈에 총 데이터 개수를 알기가 쉽지 않다. 이 때는 len()함수를 써서 리스트 내의 요소 개수를 구할 수 있다.

len(list) : list의 요소 개수 반환 함수

val = len(comp_data)

[QUIZ 2] 완성도 값이 88 이하인 제품은 불량품이라고 한다. 위 공장의 제품 불량률을 출력해보시오.

comp_data = [90, 90.2, 98, 95,6, 94, 89.3, 88, 91,3, 98.2, 97, 88.7, 89, 89, 88, 92, 93, 94, 92, 92.1, 89.9, 91.5, 92, 95.4, 98.2, 97, 97.6, 89, 88.6, 99.2, 95.3, 85.6, 88.3, 93.5, 96, 94, 94.5, 99, 92.4, 97, 97.4, 98, 95.7, 92, 94.1, 97, 96.7, 94, 93.5, 87, 99.3, 98, 95.7, 92, 94.1, 97, 96.7]

de_p = ____   # 불량품 담을 빈 리스트

val = len(comp_data)

for k in comp_data : # comp_data 내의 각 숫자에 대해
    if k <= 88 : # k가 88이하이면
        _________________ # de_p에 k를 담아라

# 불량품 개수 출력
_______________________

# 불량률 출력
________________________

2. 튜플 (tuple)

3. 딕셔너리 (dictionary)

4. 셋 (set)


코멘트

댓글 남기기

Cha's Record에서 더 알아보기

지금 구독하여 계속 읽고 전체 아카이브에 액세스하세요.

계속 읽기