인프런 커뮤니티 질문&답변

갓디비님의 프로필 이미지
갓디비

작성한 질문수

파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자

리스트

안녕하세요! quiz3관련 질문입니다!

해결된 질문

작성

·

213

0

저는 다른 방식으로 해보았는데, random 모듈에서 shuffle과 sample은 list에만 적용시킬 수 있는 건가요??

sample로 4명을 뽑은 winners의 type을 찍어보니까 list로 나오는데, 때문에 set으로 계속 변환시켜주는 코드를 찍었는데 다른방법은 없나요??

답변 2

0

갓디비님의 프로필 이미지
갓디비
질문자

저런식으로 할 수 있군요! 감사합니다 :D

0

나도코딩님의 프로필 이미지
나도코딩
지식공유자

안녕하세요 ^^

수정된 코드로 답변 드립니다.

주석을 달아뒀으니 이해하실 수 있을 거예요.

Visual Studio Code 에 복사하신 다음 확인해보세요 ^^

감사합니다.

from random import *

users = range(1, 21)
#users = set(users) # 안해도 돼요

#winners = set(sample(users, 4)) # set 으로 바꿔주지 않아도 돼요
winners = sample(users, 4)
#chicken = set(sample(winners, 1))  # set 으로 바꿔주지 않아도 돼요
chicken = sample(winners, 1)
#coffee = winners.difference(chicken) # list 에서는 difference 함수를 제공하지 않아요
coffee = [x for x in winners if x not in chicken] # winners 리스트 중에 chicken 에 포함되지 않은 항목만 뽑을 수 있어요
print("치킨 : {0}".format(chicken))
print("커피 : {0}".format(coffee))
갓디비님의 프로필 이미지
갓디비

작성한 질문수

질문하기