使用Python生成200個(gè)激活碼的實(shí)現(xiàn)方法
題目:使用 Python 生成 200 個(gè)不重復(fù)的激活碼
編寫思路
# 激活碼一般是由26個(gè)大寫字母和10個(gè)數(shù)字任意組合而成
# 長度為12位或者16位的居多激活碼
# 一個(gè)激活碼里的字符是可以重復(fù)的,而且必須要保證激活碼是不能重復(fù)的
測(cè)試用例
# 1、隨機(jī)生成字符:數(shù)字加字母
# 2、生成200個(gè)
# 3、去重
編碼:
第一步:隨機(jī)生成16位字母跟數(shù)字的字符串
1.調(diào)用ramdom模塊,使用了import random
2.choice() 方法返回一個(gè)列表,元組或字符串的隨機(jī)項(xiàng)
使用了random.choice(seed),從seed中隨機(jī)獲取字符串
3.join() 方法用于將序列中的元素以指定的字符連接生成一個(gè)新的字符串
join()方法語法:str.join(sequence)
使用"".join(sa)將隨機(jī)生成的16個(gè)字符串連接在一起
import random # 生成16位字符串 def random_str(): seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" sa = [] for i in range(16): sa.append(random.choice(seed)) salt = "".join(sa) print(salt) return salt
第二步:生成200個(gè)字符串
使用for循環(huán),調(diào)用random_str()函數(shù)
for i in range(200): L.append(random_str())
第三部:刪除重復(fù)的激活碼
1.添加刪除重復(fù)激活碼函數(shù)
當(dāng)兩個(gè)激活碼相同時(shí),打印出重復(fù)激活碼,并對(duì)該激活碼進(jìn)行標(biāo)識(shí)
2.刪除重復(fù)激活碼
對(duì)標(biāo)識(shí)過的激活碼進(jìn)行刪除
def Removal(): for i in range(200): for j in range(i+1,200): if L[i] == L[j]: print("重復(fù)的激活碼:", L[i]) L[i] = '-1' i = 0 while i < len(L): if L[i] == '-1': print("刪除重復(fù)元素", L[i]) L.remove(L[i]) i -= 1 else: i +=1
完整代碼如下:
import random # 生成16位字符串 def random_str(): seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" sa = [] for i in range(16): sa.append(random.choice(seed)) salt = "".join(sa) print(salt) return salt # 去除重復(fù)激活碼 def Removal(): for i in range(200): for j in range(i+1,200): if L[i] == L[j]: print("重復(fù)的激活碼:", L[i]) L[i] = '-1' if __name__ =="__main__": L = [] for i in range(200): L.append(random_str()) #生成兩百個(gè)激活碼 L[0] = L[1] #校驗(yàn)L[0]=L[1]時(shí),是否刪除重復(fù) Removal() i = 0 while i < len(L): if L[i] == '-1': print("刪除重復(fù)元素", L[i]) L.remove(L[i]) i -= 1 else: i +=1
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python使用Turtle庫繪制動(dòng)態(tài)鐘表
這篇文章主要為大家詳細(xì)介紹了python使用Turtle庫繪制動(dòng)態(tài)鐘表,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11Python實(shí)現(xiàn)讀取文件最后n行的方法
這篇文章主要介紹了Python實(shí)現(xiàn)讀取文件最后n行的方法,涉及Python針對(duì)文件的讀取、遍歷與運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-02-02Tensorflow: 從checkpoint文件中讀取tensor方式
今天小編就為大家分享一篇Tensorflow: 從checkpoint文件中讀取tensor方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-02-02

python的Crypto模塊實(shí)現(xiàn)AES加密實(shí)例代碼

python numpy之np.random的隨機(jī)數(shù)函數(shù)使用介紹

python四種出行路線規(guī)劃的實(shí)現(xiàn)

Python系統(tǒng)公網(wǎng)私網(wǎng)流量監(jiān)控實(shí)現(xiàn)流程

python Pandas時(shí)序數(shù)據(jù)處理