Heim > Artikel > Backend-Entwicklung > Zwei Möglichkeiten, Bestätigungscodes in Python zufällig zu generieren
Es gibt viele Möglichkeiten, Bestätigungscodes in Python zu generieren. Heute werde ich zwei für Sie auflisten. Sie können es auch auf dieser Basis ändern und eine Bestätigungscode-Methode entwerfen, die zu Ihnen passt
Methode 1:
Verwenden Sie die Range-Methode. Für Schüler, die sich über die Range-Methode nicht im Klaren sind, lesen Sie bitte den Artikel „Range()-Funktion entwickelt in Python“
# -*- coding: utf-8 -*- 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
Methode 2:
利用randint方法 # -*- coding: utf-8 -*- import random def generate_verification_code_v2(): ''' 随机生成6位的验证码 ''' code_list = [] for i in range(2): random_num = random.randint(0, 9) # 随机生成0-9的数字 # 利用random.randint()函数生成一个随机整数a,使得65<=a<=90 # 对应从“A”到“Z”的ASCII码 a = random.randint(65, 90) b = random.randint(97, 122) random_uppercase_letter = chr(a) random_lowercase_letter = chr(b) code_list.append(str(random_num)) code_list.append(random_uppercase_letter) code_list.append(random_lowercase_letter) verification_code = ''.join(code_list) return verification_code
Test:
code = generate_verification_code(6) code2 = generate_verification_code_v2() print code print code2
Ausgabeergebnis:
Glc5Tr Hr6t7B
Ich persönlich bevorzuge die erste Methode, die flexibler ist und die Länge des Bestätigungscodes nach Belieben festlegen kann.