Python每日练习之加个随机激活码

题目传送口:https://github.com/Yixiaohan/show-me-the-code

第 0001 题: 做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)?

  附加:将生成的激活码按照一定格式使用 '-' 字符相连接

    例如:随机激活码为: M8dwpQlA1fwc     按照4个字母一组分为三组后: M8dw-pQlA-1fwc

代码如下:

import random
import string

def Key(length):                                        #生成随机激活码
    f = open('txt/Key.txt', 'a')
    chars = string.ascii_letters + string.digits
    f.write(''.join([random.choice(chars) for i in range(length)]))
    f.write('\n')
    f.close()
    return ''.join([random.choice(chars) for i in range(length)])

def UpDate():                                           #进行附加处理
    for line in open("txt/Key.txt","r"): 
        A= list(line)
        for i in range(3):                              #x个段    range(x-1)个'-'
            A.insert(i*5, '-')                          #x个字母  i=i*x+1
        a = ''.join(A)
        b=a[1:]
        print(b)
        f=open('txt/Result Key.txt','a')
        f.write(b)
        f.close()
    
    

if __name__ == '__main__':
    for i in range(20):                                #生成多少条
        Key(12)                                        #激活码长度
        UpDate()
        

  先将随机激活码生成保存到一个txt文件中,(这里使用了 '' .join()这个方法,它可以使用前边' '的内容来连接括号里的东西。) 然后在主函数中循环你想要生成激活码的个数。在附加内容,先将txt文件中的激活码使用list()方法转化为列,然后使用insert()按照一定循环,向其中插入'-'字符。由于会在首位插入一个,所以取它从第二位开始后的内容保存到Result Key.txt中。

  我觉得这个法子便于理解,但是好像不太好的样子。希望有大牛可以指点指点。

猜你喜欢

转载自www.cnblogs.com/one-two-one/p/12195006.html