파이썬 자료 구조에는 리스트, 튜플, 딕셔너리가 있다.
리스트: 순서가 있고 수정 가능
튜플: 순서가 있고 수정 불가능
ages = [10, 23, 40, 35]
age1 = ages[0] # 인덱싱
age2 = ages[1] # 인덱싱
age4 = ages[-1] # 인덱싱
age1_age2 = ages[0:2] # 슬라이싱
값을 여러 개 넣고 싶을 때 리스트 형식으로 넣는 게 가능하다
값을 하나만 가져오는 것을 인덱싱, 여러 개 가져오는 것을 슬라이싱이라고 한다.
슬라이싱은 시작숫자:끝숫자+1으로 입력한다

리스트의 맨 뒤에 값을 넣어주는 매서드

ages 리스트 맨 뒤에 60이 추가된 것을 확인할 수 있다.
리스트의 원하는 위치에 값을 넣어주는 매서드

ages 리스트의 1번 자리에 15가 추가된 것을 확인할 수 있다.
리스트에서 원하는 값을 지워주는 매서드

리스트 마지막에 60이 있고 append로 뒤에 60을 또 하나 추가했다.
remove로 60을 지웠을 때 앞에 있는 60만 지워진 것을 확인할 수 있다.
리스트의 맨 뒤에 있는 값을 제거하고(remove와 비슷), 그 제거된 값을 꺼내주는 매서드

ages.pop()을 last_age로 지정해주고 print하면 60이 제거된 리스트와 제거된 값인 60을 출력해준다.
ages = [10, 20, 30]
#나이가 많은 순으로 10씩 더해서 출력
pop 30 + 10, pop 20 + 10, pop 10 + 10
pop을 쓰면 제일 뒤에 있는 값을 제거하므로 이런 식으로 값을 하나씩 추출해서 뭔가를 할 때 유용하게 사용할 수 있다.
리스트를 오름차순으로 정렬해주는 매서드

sort(reverse=True)
를 입력해주면 내림차순으로 정렬해준다.

다음과 같이 문자열도 정렬이 가능하다.

오름차순 내림차순 정렬이 가능하다
ages = (10, 20, 34) # 튜플 형태라서 수정이 불가능하다
ages = [(10, 20), (30, 40)] # 튜플으로 이루어진 리스트이기 때문에 ()단위로는 수정이 가능하다(정렬, 삭제, 삽입 등)
키(key)와 값(value)의 쌍으로 이루어진 자료형으로 키를 이용해서 접근한다.
순서가 중요하지 않다.
student = {
"name": "Hannah",
"age": 25,
"major": "Data Science"
}
name, age, major이 키, Hannah, 25, Data Science가 값이다.
print(student["name"]) # name에 해당하는 값 출력
student["age"] = 26 # 값 수정
student["grade"] = "A+" # 새 키 추가
print(student)
다음과 같이 출력된다.
Hannah
{'name': 'Hannah', 'age': 26, 'major': 'Data Science', 'grade': 'A+'}
딕셔너리에서 주로 사용하는 메서드는 다음과 같다.

리스트 안에 딕셔너리 형태로, 리스트로 순서를 주고 딕셔너리로 정체를 알려주는 형태도 많이 사용한다.
students = [
{"name": "Hannah", "age": 25, "score": 90},
{"name": "Minji", "age": 21, "score": 85},
{"name": "Yumi", "age": 23, "score": 95}
]
리스트의 평균을 구해보자
scores = [91, 85, 77, 95, 88]
sum_scores2 = sum(scores)
length_scores2 = len(scores)
m2 = sum_scores2 / length_scores2
이것 외에도 max_socre = max(scores) min_score = min(scores) 내장함수도 자주 사용한다.
리스트의 값을 수정해주고 싶을 때에는
scores[0] = 100
print(scores)
# [100, 85, 77, 95, 88]이 출력
student = {
"name": "Hannah",
"age": 25,
"major": "Data Science"
}
# name의 값을 바꾸기
student["name"] = "Yumi"
print(student["name"])
# Yumi가 출력