강의로 돌아가기
-

random.shuffle을 이용해 새 리스트를 만들면 none을 return하는데, 왜그런지요?

위 실습문제에 대해 아래와 같이 코드를 만들어 보았습니다.
제 예상은, 새롭게 shuffle된 리스트가 나올 줄 알았는데, none라고 뜨네요.
왜 그런지요?
(stackoverflow를 보니, 이 경우 random.sample을 쓰라는데, 이해가 잘안되네요.)
도움 바랍니다. 감사합니다.

import random
list = [,,,,,,]
print(list)
newlist= random.shuffle(list)
print(new
list)

작성중인 코드―random_shuffle
1
2
3
4
5
import random
list = ["빨","주","노","초","파","남","보"]
print(list)
new_list= random.shuffle(list)
print(new_list)
  • americococo
    shuffle함수를 실행시 리턴값은 따로 없고 인자로 들어간 list에 값이 변합니다
    americococo―2018.11.30 18:14
1 개의 답변
프로그래머스

shuffle은 shuffle한 리스트를 리턴하는게 아니라
인자로 전달된 배열 자체를 shuffle 합니다.

new_list= random.shuffle(list)
print(new_list)

가 아니라

random.shuffle(list)
print(list)

로 바꿔서 실행해보세요.

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.