案例:tokens生成器
学习要点
——random
——string
——字符串和数字综合练习
——列表
token生成器编程
分析:
import random
random.choice('acfhjlio') #随机选择一个字符
'f'
str_list=['a','b','c','d','e','2','3']
s = ""
s.join(str_list) #把列表中的字符串连接到s内,连接一起的意思
'abcde23'
s = ""
for i in range(5):
s = random.choice('adfjlui')
print(s)
l
i
d
i
u
import string
string.ascii_lowercase #表示26个小写字母
'abcdefghijklmnopqrstuvwxyz'
string.ascii_uppercase #表示26个大写字母
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
string.ascii_letters #表示所有字母
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
实例:
import string
import random
str_from = string.ascii_letters + string.digits
count = 10
tokens = []
for i in range(count):
s = random.choice(str_from)
print(s)
tokens.append(s)
"".join(tokens)
N
p
u
3
r
H
J
5
D
4
'Npu3rHJ5D4'
tokens生成器简化编程
分析:
[x for x in range(8)]
[0, 1, 2, 3, 4, 5, 6, 7]
[ random.choice(string.ascii_letters + string.digits) for x in range(5)] #x被放弃的变量,只是占位,使random循环5次
['K', '2', '8', 'a', '0']
[ random.choice(string.ascii_letters + string.digits) for _ in range(5)]
['u', '6', 'W', 'v', 'j']
实例:
import string
import random
count = 8
str_from = string.ascii_letters + string.digits
tonkens = [ random.choice(str_from) for _ in range(count)]
"".join(tokens)
'Npu3rHJ5D4'