Python의 난수 생성기

Vaibhhav Khetarpal 2023년10월10일
  1. randomstring 모듈을 사용하여 Python에서 임의 문자 생성
  2. secrets 모듈을 사용하여 Python에서 임의 문자 생성
  3. random.randint() 함수를 사용하여 Python에서 임의 문자 생성
Python의 난수 생성기

Python은 난수와 문자를 생성하는 데 도움이 되는 내장 모듈을 제공합니다. Python에서 임의의 문자를 생성하기 위해 이러한 내장 모듈을 구현하는 여러 방법을 사용할 수 있습니다.

이 자습서는 Python에서 임의의 문자를 생성하는 데 사용할 수 있는 다양한 방법을 보여줍니다.

randomstring 모듈을 사용하여 Python에서 임의 문자 생성

Python에는 Python 프로그램으로 가져올 수 있는 random 모듈이 포함되어 있습니다. 또한 프로그래머의 필요에 따라 임의의 문자를 생성하는 데 사용할 수 있는 몇 가지 기능이 포함되어 있습니다.

이 경우 random 모듈에 포함된 random.choice() 함수를 사용할 수 있습니다. random.choice() 함수는 지정된 시퀀스에서 무작위로 선택된 요소를 반환하는 데 사용됩니다.

string 모듈은 문자열을 처리하는 기능을 제공합니다. 하나의 특정 상수인 ascii.letters는 기본적으로 대문자와 소문자 범위를 의미하는 (A-Z)(a-z) 범위를 포함하는 문자열을 반환하는 데 사용됩니다.

다음 코드는 randomstring 모듈을 사용하여 Python에서 임의의 문자를 생성합니다.

import string
import random

if __name__ == "__main__":

    rstr = random.choice(string.ascii_letters)
    print(rstr)

위의 코드는 다음 출력을 제공합니다.

v

secrets 모듈을 사용하여 Python에서 임의 문자 생성

secrets 모듈을 사용하여 암호학적으로 안정적이고 안전하며 예측할 수 없는 난수를 생성할 수 있습니다. 또한 비밀번호, 계정 인증, 보안 토큰 및 URL과 같은 중요한 보안 관련 데이터를 생성하고 유지하는 데 주로 사용됩니다.

보안에 중점을 두고 있기 때문에 Python에서 난수를 생성하는 가장 안전한 방법이며 Python 3.6 이후의 모든 Python 버전에서 사용할 수 있습니다.

random 모듈과 유사하게 secrets 모듈에는 Python에서 임의의 문자를 생성하는 데 사용할 수 있는 choice() 함수도 포함되어 있습니다.

다음 코드는 secrets 모듈을 사용하여 Python에서 임의의 문자를 생성합니다.

import string
import secrets

if __name__ == "__main__":

    rand = secrets.choice(string.ascii_letters)
    print(rand)

위의 코드는 다음 출력을 제공합니다.

c

random.randint() 함수를 사용하여 Python에서 임의 문자 생성

random.randint() 함수를 사용하여 지정된 범위 내에서 난수를 반환할 수 있습니다. 프로그래머는 범위를 지정할 수 있습니다. random.randint() 함수는 Python에서 제공하는 내장 random 모듈에 포함되어 있으며 이 함수를 사용하려면 Python 코드로 가져와야 합니다.

random.randint() 함수는 random.randrange() 함수의 별칭이며 startstop의 두 가지 필수 매개변수를 포함합니다. 이 매개변수는 난수 또는 문자를 생성하려는 범위를 지정합니다.

Python에서 임의의 문자를 생성하기 위해 동일한 random.randint() 함수를 구현할 수 있습니다.

다음 코드는 random.randint() 함수를 사용하여 Python에서 임의의 문자를 생성합니다.

import random

randlowercase = chr(random.randint(ord("a"), ord("z")))
randuppercase = chr(random.randint(ord("A"), ord("Z")))
print(randlowercase, randuppercase)

코드 프로그램은 다음 출력을 제공합니다.

s K

이 기사에서 언급한 모든 코드는 Python에서 임의의 문자를 생성하기 위한 것이므로 코드가 실행될 때마다 출력이 달라집니다.

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

관련 문장 - Python Random