需求:生成100个游戏礼包码
具体如下
# 1.构造100个5位随机数 listNumA = []
for n in range(100):
listNumA.append(random.randint(10000, 99999))
# 2.对上述100个筛除重复值 listNumB = list(set(listNumA)) # 将得到的list赋值给新的list,避免后序的for循环中,每次进行set操作,导致速度很慢
for n in range(100):
print(listNumB[n]) # 此处已经可以看到不重复的输出了
# 3.将结果输出到文本 with open('giftCode.txt', 'a+') as f:
for n in range(100):
f.write(str(listNumB[n]) + '\n')
# 4.实际工作中发现,纯数字在多次添加时,可能导致重复,建议在每次的giftCode前面添加字母,如'AA','AB',以此类推
# 修改第二段 listNumB = list(set(listNumA))
char = 'AA'
for n in range(100):
print(char + listNumB[n])
所以,最后的完整代码如下:
#! coding: utf-8
import random listNumA = []
for n in range(100):
listNumA.append(random.randint(10000, 99999)) listNumB = list(set(listNumA))
char = 'AA' with open('giftCode.txt', 'a+') as f:
for n in range(100):
f.write(char + str(listNumB[n]) + '\n')