ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [파이썬 기본편] 5-6.퀴즈 #4
    파이썬 나도코딩 2022. 7. 3. 16:05
    from random import *
    users = range(1, 21)
    users = list(users)
    shuffle(users)
    sample(users, 4)
    print("치킨당첨자:"+str(sample[0]))
    print("커피당첨자:"+str(sample[1:]))
    ####오답

    이런저런 해설도 보고 해서 우여곡절 끝에 마지막에는 해설을 안보고 내가 할 수 있는 만큼 했다

    일단 정답은 나왔다

     

    우여곡절 끝에 답안 코드 완성

    from random import *
    
    users = range(1, 21)
    users = list(users)
    shuffle(users)
    print(users)
    users_sample = sample(users, 4)
    print(users_sample)
    
    coffee_winners = users_sample[0]
    print("커피당첨자:"+str(coffee_winners))
    chicken_winners = users_sample[1:]
    print("치킨당첨자:"+str(chicken_winners))

     

     

    모범 답안-1

    from random import *
    
    users = range(1, 21)
    users = list(users)
    shuffle(users)
    
    winners = sample(users, 4)
    
    print(" -- 당첨자 발표 -- ")
    print("치킨 당첨자 : {0}".format(winners[0]))
    print("커피 당첨자 : {0}".format(winners[1:]))
    print(" -- 축하합니다 --")

     

     

     

     

     

     

     

     

    모범답안-2

    from random import *
    
    users = list(range(1, 21)) # range 를 list 로 바로 감싸면 한 줄 더 줄일 수 있어요!
    shuffle(users)
    
    chicken_winner = sample(users, 1) # 치킨 당첨자 1명 추첨
    remain_users = set(users) - set(chicken_winner) # 전체 집합에서 치킨 당첨자 집합을 제외
    coffee_winners = sample(remain_users, 3) # 남은 19명 중에서 3명 추첨
    
    print("-- 당첨자 발표 --")
    print("치킨 당첨자 : {0}".format(chicken_winner))
    print("커피 당첨자 : {0}".format(coffee_winners))
    print("-- 축하합니다 --")

     

     

     

     

    #파이썬 5-6퀴즈를 풀면서 느낀점

    1.str,list형변환에 더 익숙해 져야겠다 형변환으로 인해 에러가 났다

    2. shuffle,sample함수의 문법에 익숙해져서 무의식 적으로 칠 정도로 해야 겠다 

    3. set 자료구조를 알아야 겠다 -몰라서 모범답안-2로 풀 수 없었다

    4.print("치킨 당첨자 : {0}".format(chicken_winner))

    print("커피 당첨자 : {0}".format(coffee_winners))

    이런식으로 format를 하는데 무의식적으로 할 수 있을 정도로 해야겠다

Designed by Tistory.