Random.shuffle()이 None을 반환하는 이유
Python의 random.shuffle() 함수는 특정 상황에서 None을 반환하는 것처럼 보일 수 있습니다. 이 문제를 해결하려면 random.shuffle()의 목적을 이해하는 것이 중요합니다.
random.shuffle()은 목록을 제자리에서 섞는 데 사용됩니다. 구조의 수정된 복사본을 반환하는 많은 함수와 달리, random.shuffle()은 새 목록을 만들지 않고 원래 목록을 수정합니다. 따라서 Random.shuffle(x)를 호출하면 x 자체가 섞이고 함수가 명시적으로 새 목록을 생성하지 않으므로 None이 반환됩니다.
섞인 값 가져오기
셔플된 값을 얻으려면 호출한 후 인쇄하거나 원본 목록에 액세스하세요. random.shuffle().
import random x = ['foo', 'bar', 'black', 'sheep'] random.shuffle(x) print(x) # Prints the shuffled list
새 섞인 목록 만들기
원본 목록을 수정하지 않고 무작위로 섞인 새 목록을 만들려면 다음 중 하나를 사용하세요. random.sample() 또는 sorted().
사용 random.sample():
import random x = ['foo', 'bar', 'black', 'sheep'] shuffled_list = random.sample(x, len(x))
sorted() 사용:
import random x = ['foo', 'bar', 'black', 'sheep'] shuffled_list = sorted(x, key=lambda k: random.random())
위 내용은 왜 Python\의 `random.shuffle()`은 없음을 반환합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!