작업 일지
작업일지 난수 발생
관리자   2020.03.04 13:00:38
난수 발생
 
각 프로그램 언어에는 난수를 발생해 주는 함수들이 있다. 파이썬(Python)에도 물론 있다. 사용법은 언어별로 버전별로 조금씩 차이가 있다.
 
무작위 숫자 뿐만 아니라 문자와 특수기호가 들어간 일정한 갯수의 무작위 문자열이 필요해서 함수를 하나 만들게 됐다. 장고(Django)에서 사용 중이다.
 
view: 

#####################################
# 난수 발생
#####################################
def get_random_string(type, length):
    """
    내용    : 난수 발생
    매개변수: type - 난수 유형, length - 길이
    """
    import string
    import random

    # 유형 확인
    if not type:
        type = 'd'

    # 길이 확인
    if length < 0:
        length = 3

    if length > 20:
        length = 20

    # 난수 유형 생성
    string_pool = ''
    if 'd' in type: # 숫자
        string_pool += string.digits
    if 'a' in type: # 대소문자
        string_pool += string.ascii_letters
    if 'p' in type: # 특수문자
        string_pool += string.punctuation

    # 랜덤한 문자열 생성
    #result = ''.join(random.choices(string_pool, k=length)) # version 3.6 이상

    result = ''
    for i in range(length) :
        result += random.choice(string_pool) # 랜덤한 문자열 하나 선택

    return result

 

view: 


#####################################
# 사용 방법 예시
#####################################
    random_sring = get_random_string('dap', 10)
 
  - 작업자 A -
 
목록
목록 보기 / 숨기기