模拟生成微软序列号(Python123)

模拟生成微软序列号

描述

微软产品一般都一个25位的序列号,是用来区分每份微软产品的产品序列号。产品序列号由五组被“-”分隔开,由字母数字混合编制的字符串组成,每组字符串是由五个字符串组成。如:
36XJE-86JVF-MTY62-7Q97Q-6BWJ2
每个字符是取自于以下24个字母及数字之中的一个:
B C E F G H J K M P Q R T V W X Y 2 3 4 6 7 8 9
采用这24个字符的原因是为了避免混淆相似的字母和数字,如I 和1,O 和0等,减少产生不必要的麻烦。
随机数种子函数语法为:random.seed(n)

输入格式

在2行中分别输入一个正整数:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬

第1个整数,代表要生成的序列号的个数‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬

第2个正整数代表随机数种子

输出格式

指定个数的序列号

代码

import random

number, seed = [input() for _ in range(2)]
random.seed(seed)  # 随机种子
l1 = 'B C E F G H J K M P Q R T V W X Y 2 3 4 6 7 8 9'.split()  # 构建字符列表,通过空格分开
for j in range(int(number)):  # 生成number个序列号
    text = ''
    for i in range(1, 25 + 1):
        text += random.choice(l1)  # 列表中随机挑选一个字符
        if i % 5 == 0 and i != 25:  # 最后一个字符时不添加'-',每个五个字符添加'-'
            text += '-'
    print(text)

posted @ 2021-12-16 16:56  里列昂遗失的记事本  阅读(3688)  评论(0编辑  收藏  举报