Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python Shuffle 목록:단계별 가이드

Python random.shuffle() 메서드는 목록의 항목 순서를 무작위로 변경합니다. 인덱싱과 결합된 이 방법은 목록에서 임의의 항목을 선택하는 데 유용합니다. random.shuffle() 메서드는 변경하려는 목록이라는 하나의 인수를 허용합니다.


목록의 항목 순서를 무작위로 지정하려는 상황이 발생할 수 있습니다. 예를 들어 매장에서 추첨을 통해 당첨자를 선택하는 프로그램을 만들고 있다고 가정해 보겠습니다. 참가자 목록을 무작위로 재구성하여 해당 프로그램에서 우승자를 선택하도록 할 수 있습니다.

random.shuffle()은 메소드가 들어옵니다. random.shuffle() 메소드는 무작위의 일부입니다. Python의 모듈이며 목록의 항목을 무작위로 재정렬하는 데 사용됩니다. 이 자습서에서는 random.shuffle()을 사용하는 방법에 대해 설명합니다. 방법.

파이썬 셔플 목록

random.shuffle() Python 함수는 목록의 항목을 무작위로 재정렬합니다. 이 방법은 목록에서 무작위로 항목을 검색하려는 응용 프로그램에 유용합니다. random.shuffle() 메소드는 원래 목록을 수정합니다. 이 방법은 새 목록을 생성하지 않습니다.

목록 데이터 컬렉션을 저장합니다. Python 목록은 순서가 지정됩니다. 즉, 목록에 항목을 저장할 때 해당 위치에 유지됩니다. 이것은 목록의 중요한 기능이지만 목록의 순서를 뒤섞어야 하는 프로그램을 만들 수 있습니다.

무작위 .shuffle() Python에서 의사 난수 생성기를 구현하는 임의 라이브러리의 일부입니다. 즉, random.shuffle()을 사용하기 전에 방법을 사용하려면 무작위 라이브러리를 코드로 가져와야 합니다. 코드에 다음을 추가하면 됩니다.

import random

random.shuffle() 구문 방법은 다음과 같습니다.

import random

random.shuffle(list_name, function)

random.shuffle() 메소드는 두 개의 매개변수를 사용합니다:

참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.

부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.

  • list_name :목록 , 튜플 , 또는 문자열 순서를 섞고 싶은 사람(필수).
  • 기능 :0.0과 1.0 사이의 임의의 부동 소수점 또는 해당 범위 내의 다른 부동 소수점을 반환하는 함수의 이름(선택 사항).

기능 사용 random.shuffle() 매개변수 드물다. 값의 가중치를 다르게 지정하는 사용자 지정 셔플 알고리즘을 사용하려는 경우에만 사용합니다. 따라서 기능은 다루지 않습니다. random.shuffle()의 매개변수 이 튜토리얼에서.

문자열이나 튜플에 random.shuffle() 메서드를 사용할 수 있습니다. 어쨌든 random.shuffle()은 원본 데이터를 수정합니다. 새 문자열이나 새 튜플과 같은 새 값을 생성하지 않습니다.

파이썬 random.shuffle():예

우리 가게에서 추첨을 한다고 가정해 봅시다. 우승자는 상점의 모든 제품에 사용할 수 있는 $100 기프트 카드를 받게 됩니다. 2등은 $50의 상품권을, 3등은 $25의 상품권을 받게 됩니다.

추첨에 참가한 모든 사람의 이름이 포함된 목록이 있습니다. 우리의 목표는 우승자를 결정하기 위해 무작위 순서로 목록을 재구성하는 것입니다. 이를 위해 random.shuffle()을 사용합니다. 방법.

다음은 우승자를 식별할 수 있도록 목록의 순서를 무작위로 재구성하는 데 사용할 수 있는 코드입니다.

import random

raffle_entrants = ['Thomas Crane', 'Braden Cox', 'Adie Paulson', 'Leonardo Downs', 'Lindsay Knapp', 'Carl Sanderson']

print('Entrants (ordered)')
print(raffle_entrants)

print('Winners (random order)')
random.shuffle(raffle_entrants)
print(raffle_entrants)

우리의 함수는 다음을 반환합니다:

Entrants (ordered)
['Thomas Crane', 'Braden Cox', 'Adie Paulson', 'Leonardo Downs', 'Lindsay Knapp', 'Carl Sanderson']
Winners (random order)
['Adie Paulson', 'Braden Cox', 'Carl Sanderson', 'Leonardo Downs', 'Thomas Crane', 'Lindsay Knapp']

첫 번째 줄에서 Python import 문을 사용하여 임의 라이브러리를 가져옵니다. 이 라이브러리에는 random.shuffle()이 포함되어 있습니다. 나중에 코드에서 사용하는 방법입니다. 그런 다음 raffle_entrants라는 Python 변수를 선언합니다. 여기에는 추첨에 참가한 모든 사람의 이름이 포함됩니다.

다음 두 줄에서 Entrants (ordered)라는 메시지를 콘솔에 출력합니다. , raffle_entrants의 콘텐츠 목록. 이렇게 하면 프로그램이 셔플하기 전에 목록을 볼 수 있습니다.

"Winners (random order)"라는 메시지를 콘솔에 출력합니다. 우리 코드는 random.shuffle()을 사용합니다. raffle_entrants의 콘텐츠를 섞는 방법 목록. 마지막으로 raffle_entrants를 인쇄합니다. random.shuffle()을 사용하여 섞인 후의 목록 .

이제 무작위로 섞인 이름 목록이 있습니다. 위의 예에 따르면 이제 Braden Cox가 1위를 차지했음을 알 수 있습니다. Thomas Crane이 2위를, Leonardo Downs가 3위를 차지했습니다.

강령 확인

코드를 다시 실행하면 새로 정렬된 Python 목록이 표시됩니다. 다음은 코드를 두 번째로 실행할 때 발생하는 일입니다.

Entrants (ordered)
['Thomas Crane', 'Braden Cox', 'Adie Paulson', 'Leonardo Downs', 'Lindsay Knapp', 'Carl Sanderson']
Winners (random order)
['Braden Cox', 'Lindsay Knapp', 'Carl Sanderson', 'Leonardo Downs', 'Thomas Crane', 'Adie Paulson']

따라서 random.shuffle() 사용할 때마다 무작위로 구성된 목록(기술적으로는 의사 무작위로 구성된 목록)을 반환합니다.

결론

random.shuffle()을 사용하여 Python에서 목록의 항목 순서를 무작위로 지정할 수 있습니다. 방법. 이 예에서 random.shuffle() 참가자 목록에서 무작위로 추첨 당첨자를 선택하는 프로그램을 만드는 데 도움이 되었습니다.

Python 프로그래밍에 대해 더 알고 싶으십니까? Python 학습 방법 가이드를 읽어보세요. 이 가이드에서는 Python을 배우는 방법에 대한 최고의 팁을 찾을 수 있습니다. 이 가이드에는 Python 지식을 향상시키는 데 도움이 되는 학습 리소스 및 과정 목록도 포함되어 있습니다.