Q>
A 학교에서는 단체 티셔츠를 주문하기 위해 학생별로 원하는 티셔츠 사이즈를 조사했습니다.
선택할 수 있는 티셔츠 사이즈는 작은 순서대로 'XS', 'S', 'M', 'L', 'XL', 'XXL' 총 6종류가 있습니다.
학생별로 원하는 티셔츠 사이즈를 조사한 결고가 들어있는 리스트 shirt_size가 매개변수로 주어질 때,
사이즈별로 티셔츠가 몇 벌씩 필요한지 가장 작은 사이즈부터 순서대로 리스트에 담아 return 하도록 solution 함수를
완성해주세요.
- 매겨변수 설명
학생별로 원하는 사이즈를 조사한 결과가 들어있는 리스트 shirtsize가 solution 함수의 매개변수로 주어집니다.
* shirtsize 의 길이는 1 이상 100 이하입니다.
* shirt_size 에는 치수를 나타내는 문자열 'XS', 'S', 'M', 'L', 'XL', 'XXL'이 들어있습니다.
- return 값 설명
티셔츠가 사이즈별로 몇 벌씩 필요한지 가장 작은 사이즈부터 순서대로 리스트에 담아 return 해주세요.
* return 하는 리스트에는 ['XS' 개수, 'S' 개수, 'M' 개수, 'L' 개수, 'XL' 개수, 'XXL' 개수] 순서로 들어있어야 합니다.
- 예시
shirt_size | return |
['XS', 'S', 'L', 'L', 'XL', 'S'] | [1, 2, 0, 2, 1, 0] |
- 예시 설명
'XS'와 'XL'은 각각 한 명씩 신청했습니다.
'S'와 'L'은 각각 두 명씩 신청했습니다.
'M'과 'XXL'을 신청한 학생은 없습니다.
따라서 순서대로 [1, 2, 0, 2, 1, 0]을 리스트에 담아 return 하면 됩니다.
A>
def solution(shirt_size):
size_counter = [0 for _ in range(6)]
for size in shirt_size:
if size == "XS":
size_counter[0] += 1
elif size == 'S':
size_counter[1] += 1
elif size == 'M':
size_counter[2] += 1
elif size == 'L':
size_counter[3] += 1
elif size == 'XL':
size_counter[4] += 1
elif size == 'XXL':
size_counter[5] += 1
return size_counter
shirt_size = ["XS", "S", "L", "L", "XL", "S"]
ret = solution(shirt_size)
print(ret)
A1>
def solution(shirt_size):
size_counter = []
for i in range(0, 6):
size_counter.append(i * 0)
for size in shirt_size:
if size == "XS":
size_counter[0] += 1
elif size == 'S':
size_counter[1] += 1
elif size == 'M':
size_counter[2] += 1
elif size == 'L':
size_counter[3] += 1
elif size == 'XL':
size_counter[4] += 1
elif size == 'XXL':
size_counter[5] += 1
return size_counter
shirt_size = ["XS", "S", "L", "L", "XL", "S"]
ret = solution(shirt_size)
W>
size_counter = [0 for _ in range(6)]
size_counter = []
for i in range(0, 6):
size_counter.append(i * 0)
두 가지의 방법으로 사용할 수 있다.
위의 방법은 파이썬의 언더스코어 방법이다.
언더스코어 사용 이유는 아래와 같다.
- 인터프리터에서 마지막 값을 저장할 때
- 값을 무시하고 싶을 때
- 변수나 함수명에 특별한 의미 또는 기능을 부여하고자 할 때
- 국제화 / 지역화 함수로써 사용할 때
- 숫자 리터럴값의 자릿수 구분을 위한 구분자로써 사용할 때
['XS' 개수, 'S' 개수, 'M' 개수, 'L' 개수, 'XL' 개수, 'XXL' 개수] 를 구해야되므로 리스트에 각 0을 입력 해야된다.
그러므로 [0, 0, 0, 0, 0, 0] 이 형식이 된다.
이 리스트에는 0 ~ 5번까지 'XS', 'S', 'M', 'L', 'XL', 'XXL' 를 카운트하는 방식이다.
마지막에 return은 셔츠 별 숫자를 더한 값의 리스트를 출력하는 구조이다.
F>
#> https://www.ybmit.com/cos_pro/cos_pro_r_test.jsp
'Python_Matter > COS Pro' 카테고리의 다른 글
YBM Python Test Level 2 - 369 게임 (0) | 2019.10.14 |
---|---|
YBM Python Test Level 2 - 주어진 리스트의 순서 뒤집기 (0) | 2019.10.14 |
YBM Python Test Level 2 - 자연수 리스트 (0) | 2019.10.14 |
YBM Python Test Level 2 - D-Day 계산 (0) | 2019.10.11 |
YBM Python Test Level 2 - 회원 등급 할인 서비스 (0) | 2019.10.11 |