# 如何使用Python生成200个优惠卷(激活码)
import random
import string # string.ascii_letters 26个大小写
# string.digits -9数字
# 获得激活码中的字母和数字组合
chars = string.ascii_letters + string.digits
print(chars) # 获得4位数激活码
def getRandom():
return "".join(random.sample(chars, )) print(getRandom()) # 获得4列4位数激活码 以"-"串联
def concatenate(group):
return "-".join([getRandom() for i in range(group)]) print(concatenate()) # 生成n组4列的16位激活码
def generate(n):
return [concatenate() for i in range(n)] if __name__ == '__main__':
print(generate())
运行结果:
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
BE9v
Ma09-WGYp-edkj-u6lT
['Y94h-HMkg-53rl-fVJZ', 'BZF0-pJ4w-wq9N-Wdnj', 'RxhU-Jhgm-tar7-Deo2', 'EDJU-sWJo-MS8Y-L7Du', 'H3GX-puHw-MbOf-f3Nl']
知识要点:
random.sample 获取指定长度的随机序列
string.ascii_letters Python3.7 26个大小写字母字符串
string.digits 0-9数字字符串
join 将序列中的元素以指定字符连接生成新的字符串