>  기사  >  백엔드 개발  >  인증 코드 무작위 생성

인증 코드 무작위 생성

巴扎黑
巴扎黑원래의
2017-07-17 15:59:451669검색

1. 목록의 도움으로

import random

def random_code():
    random_list = []for i in range(4):
        ra = random.randrange(4)if ra == i:
            random_list.append(chr(random.randrange(97,122)))else:
            random_list.append(str(random.randrange(0,9)))
    code = "".join(random_list)return code

result = random_code()
print(result)

위 코드는 무작위 확인 코드 기능을 구현하지만 소문자를 포함하는 무작위 확인 코드만 생성할 수 있으며 목록을 사용하여 완료합니다. 문자열의 접합 및 추가 위 목록에서 문자열 jion() 메서드는 임의의 확인 코드를 생성합니다. 대문자 인증코드를 생성하는 방법도 시도해 보겠습니다.

import random

def random_code():
    random_list = []for i in range(4):
        ra = random.randrange(4)if ra == i:
            random_list.append(chr(random.randrange(97,122)))
        elif ra > i:
            random_list.append(str(random.randrange(0,9)))else:
            random_list.append(chr(random.randrange(65,90)))
    code = "".join(random_list)return code

result = random_code()
print(result)

데이터 사이에는 보다 큼, 보다 작음, 같음의 세 가지 관계가 있으므로 각 상황을 분석하여 3개의 무작위 확인 코드가 생성될 수 있으며, 같을 경우 소문자 확인 코드가 생성됩니다. 크거나 작을 경우 숫자를 생성하고, 작을 경우 대문자 인증코드를 생성하는 방식으로 웹사이트에서 공통적인 형태의 인증코드를 구현합니다.

2. 스트링 스플라이싱

import random

def verification_code():
    code = ""for i in range(1,5):
        ra = random.randint(1,4)if ra == i:string = chr(random.randrange(97,122))
        elif ra > i:string = chr(random.randrange(65,90))else:string = str(random.randint(0,9))
        code += stringreturn code

result = verification_code()
print(result)

이 방법은 스트링 스플라이싱을 이용해 랜덤 인증코드를 생성하는 방법인데, 사실 위 방법들의 본질은 같을 수도 있습니다. 조금 더 높겠지만 모두 무작위 인증 코드 기능을 구현합니다.

2. 청구서 일련번호 생성 방법

import datetime,time

def serial_number():
    serial = "{0}{1}".format(datetime.datetime.now().strftime("%Y%m%d%H%M%S"),str(int(time.time())))return serial

message = serial_number()
print(message)

청구서 일련번호는 해당 구매의 시간 일련번호이므로 날짜/시간 모듈과 시간 모듈로 구성됩니다. 시간은 결코 변하지 않을 것입니다.

3. 범위 방법을 사용하세요

import random
def generate_verification_code(len=6):
    ''' 随机生成6位的验证码 '''
    # 注意: 这里我们生成的是0-9A-Za-z的列表,当然你也可以指定这个list,这里很灵活
    # 比如: code_list = ['P','y','t','h','o','n','T','a','b'] # PythonTab的字母
    code_list = [] 
    for i in range(10): # 0-9数字
        code_list.append(str(i))
    for i in range(65, 91): # 对应从“A”到“Z”的ASCII码
        code_list.append(chr(i))
    for i in range(97, 123): #对应从“a”到“z”的ASCII码
        code_list.append(chr(i))
    myslice = random.sample(code_list, len)  # 从list中随机获取6个元素,作为一个片断返回
    verification_code = ''.join(myslice) # list to string
    return verification_code


위 내용은 인증 코드 무작위 생성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.