Data_Analysis_Track_33/Python_문제풀이
Python_02_문제풀이(자료구조)
lsc99
2023. 8. 20. 19:17
# 문제 1 ~ 7
jumsu = [100, 90, 100, 80, 70, 100, 80, 90, 95, 85]
# 위 리스트는 학생번호 1번 ~ 10번까지 10명의 시험 점수이다.
#(1) 7번의 점수를 출력하세요
jumsu[6] # 학생번호 1번 ~ 10번 -> index[0] ~ index[9], 학생번호 7번 -> index[6]
#(2) 1번부터 5번까지의 점수를 출력하세요.
# jumsu[0:5]
jumsu[:5] # slicing 이용, 1번 ~ 5번 -> 0번 ~ 4번
# 리스트[시작값:종료값:증감값], 시작값부터 종료값-1까지 -> 종료값 = 5
#(3) 4, 5, 6, 7번의 점수를 출력하세요.
jumsu[3:7] # 4 ~ 7번 -> index[3] ~ index[6]
#(4) 짝수번째 점수를 출력하세요.
jumsu[1::2] # 2,4,6,8 .. 번째 점수들 -> 1번 인덱스부터 2의 증감값을 가진 슬라이싱
#(5) 홀수번째 점수를 출력하세요.
jumsu[::2] # 1,3,5,7 .. 번째 점수들 -> 0번 인덱스부터 2의 증감값을 가진 슬라이싱
#(6) 9번의 점수를 20으로 변경하고 전체 출력하세요.
jumsu[8] = 20 # 9번 -> index[8] 변경
jumsu
#(7) 중복된 점수는 제거하고 하나씩만 나오도록 출력하세요.
set(jumsu)
# list(set(jumsu)) # set으로 중복을 제거하고 그 결과를 리스트로 반환
# 문제 8 ~ 9
fruits = ["복숭아", "수박", "딸기"]
#(8) fruits 리스트에 마지막 원소로 "사과", "귤"을 추가하세요.
# fruits.append("사과") # append -> 하나씩 추가
# fruits.append("귤")
fruits.extend(["사과", "귤"]) # extend -> 한번에 추가
fruits
#(9) fruits 리스트에서 "복숭아"를 제거하세요.
fruits.remove("복숭아") # remove -> 제거
fruits
# 문제 10 ~ 15
#(10)본인의 이름, 나이, email주소, 취미, 결혼유무를 사전(딕셔너리)으로 생성.
# 취미는 2개 이상의 값을 넣는다..
# dictionary 생성 첫 번째 방법
info = {"name" : "홍길동",
"age" : "20",
"email" : "abcde@naver.com",
"hobby" : ["baseball","game"],
"married" : "No"}
info
# 두 번째 방법
info2 = dict(name = "홍길동", age = 20, email = "abcde@naver.com", hobby = ['baseball', 'game'], married = 'No')
print(info2)
print(type(info2))
#(11) 위 딕셔너리에서 이름과 email주소를 조회해서 출력하세요.
print(info["name"], info["email"])
#(12) 위 딕셔너리에서 취미중 두번째 취미를 조회해서 출력하세요.
info["hobby"][1] # hobby의 value -> baseball(index[0]), game(index[1])
#(13) 위 딕셔너리에 몸무게와 키 항목을 추가하세요.
info["weight"] = 67
info["tall"] = 179
info
#(14) 위 딕셔너리에서 나이를 제거하세요.
del info["age"]
info
# 키 삭제
print(info["tall"])
info.pop("tall")
#(15) 위 딕셔너리에서 email 주소를 다른 값으로 변경하세요.
info["email"] = "aaaaaa@naver.com"
info
info.pop("email") # email 주소 삭제