본문 바로가기

Data_Analysis_Track_33/Python_문제풀이

Python_02_문제풀이(자료구조)

# 문제 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 주소 삭제