개발/(1) 초위파(Python) 300제 풀이

초보자를 위한 파이썬(Python) 300제 풀이 (81, 82, 83, 84, 85)

생각외로깔끔함 2022. 10. 10. 10:57
728x90
반응형

 

초보자를 위한 파이썬(Python) 300제 풀이

 

 

 

81. 기본적으로 데이터 언패킹은 좌변의 변수와 우변 데이터 개수가 같아야 합니다. 하지만 star expression(*)을 사용하면 변수의 개수가 달라도 데이터 언패킹을 할 수 있습니다. 튜플에 저장된 데이터 중에서 앞에 있는 두 개의 데이터만 필요할 경우 나머지 데터의 언패킹 코드를 작성할 필요가 없습니다.

>> a, b, *c = (0, 1, 2, 3, 4, 5)
>> a
0
>> b
1
>> c
[2, 3, 4, 5]

아래와 같이 10개의 값이 저장된 scores 리스트가 있을 때, star expression을 사용하여 좌측 8개의 값을 valid_score 변수에 바인딩 하세요.

scores = [8.8, 8.9, 8.7, 9.2, 9.3, 9.7, 9.9, 9.5, 7.8, 9.4]

 

*valid_score, a, b = scores
a = 7.8
b = 9.4

print(valid_score)
  • 혹은
*valid_score, _, _= scores
print(valid_score)
  • 위 두 방법으로 표현이 가능합니다.
  • 언패킹을 할 시에 튜플은 데이터 갯수에 맞춰야 하지만 * 표현식으로 데이터를 모아서 언패킹 할 수 있습니다.
  • 결과적으로 언패킹이 되는 틀만 맞춰주면 어떤 식으로든 가능합니다.
  • 두 정답을 비교하면 이해하기가 쉽습니다.

 

82. 81번 문제에서 좌측이 아니라 우측 8개의 값을 valid_score 변수에 바인딩하세요.

a, b, *valid_score = scores
print(valid_score)
  • 위 문제와 동일합니다.

 

83. 81번 문제에서 이번에는 가운데 8개의 값을 valid_score 변수에 바인딩하세요.

a, *valid_score, b = scores
print(valid_score)
  • 위 문제와 동일합니다.

 

84. temp 이름의 비어있는 딕셔너리를 만드세요.

temp = {}

 

85. 아래 아이스크림 이름과 희망 가격을 딕셔너리로 구성하세요.

이름 희망 가격
메로나 1000
폴라포 1200
빵빠레 1800

 

temp = {"메로나" : 1000 , "폴라포" : 1200, "빵빠레" : 1800}

print(temp)
  • 딕셔너리는 {} 부호로 구성되며, ":" 이 표현을 사용하여 짝을 지어주는 형식이다.

 

 

 

출처 = https://wikidocs.net/book/922, 초보자를 위한 파이썬 300제,

PyCharm 사용

728x90
반응형