리스트 (list)

리스트 기초

  • 순서가 있는, 다른 자료형들의 모임
a = [1,5,2]
b = [3,'a',6,1]
c = []
d = list()
e = [1,2,4,[2,3,4]]
  • 리스트의 길이도 len() 함수를 이용 가능
print(len(a))			# 3
print(len(b))			# 4
print(len(d))			# 0
print(len(e))			# 4
  • 순서가 있기 떄문에, 문자열에서처럼 indexing 과 slicing 가능
print(e[2])				# 4
print(e[3][1])			# 3

리스트의 더 많은 기능들

  • 덧붙이기
a = [1,2,3]
a.append(5)
print(a)				# [1,2,3,5]

a.append([1,2])
print(a)				# [1,2,3,5,[1,2]]

a += [2,7]
print(a)				# [1,2,3,5,[1,2],2,7]
  • 정렬하기
a = [2,5,3]
a.sort()
print(a)				# [2,3,5]

a.sort(reverse=True)
print(a)				# [5,3,2]
  • 요소가 list 안에 있는지 알아보기
a = [2,1,4,"2",6]

print(1 in a)			# True
print('1' in a)			# False
print(0 not in a)		# True

딕셔너리 (dictionary)

딕셔너리 기초 (이하 dict)

  • dict는 ‘key’와 ‘value’의 쌍으로 이루어진 자료모임
    ex. ) 영한사전에서 영어단어를 검색하면 한국어 뜻이 나오는 경우
person = {"name":"bob", "age":21}
print(person["name"])				# 'bob'
  • dict 요소에는 순서가 없기 떄문에 indexing 불가 (Key Error)
  • dict 값을 업데이트 하거나 새로운 쌍의 자료를 넣을 수 있다.
person = {"name":"bob", "age":21}

person['name'] = 'Robert'
print(person) 			# {'name': 'Robert', 'age': 21}

person['height'] = 174.8
print(person)			# {'name': 'Robert', 'age': 21, 'height': 174.8}
  • dict의 Value로는 아무 자료형이나 쓸 수 있어, 다른 dict를 넣을 수 있다.
person = {'name':'Alice',
          'age':16,
          'scores':{'math':81, 'science':92, 'Korean':84}}
print(person['scores'])

> {'math': 81, 'science': 92, 'Korean': 84}

print(person['scores']['science'])

> 92
  • dcit 안에 해당 key가 존재하는지 알고 싶을 때는 in을 사용
person = {'name' : 'Bob', 'age' : 21}

print('name' in person) 		# True
print('email' in person)		# Fales
print('phone' not in person)	# True

list와 dict의 조합

  • dict는 list와 함께 쓰여 자료를 정리하는데 쓰일 수 있다.
people = [{'name':'bob','age':20,},{'name':'carry','age':38}]

print(people[0]['name']) 		# 'bob'
print(people[1]['name'])		# 'carry'

person = {'name':'john', 'age':7}
people.append(person)
print(people)
> [{'name': 'bob', 'age': 20}, 
   {'name': 'carry', 'age': 38}, 
   {'name': 'john', 'age': 7}]