python练手小程序


1.生成200个指定长度的随机码


import random
import string

def rand_str(num,len=7):
    f = open('file.txt','w')
    count = 1
    for i in range(num):
        restr = ''
        chars = string.ascii_lowercase+ string.digits
        for i in range(len):
            restr += random.choice(chars)

        f.write( str(count)+ ' ' + restr +'\n')
        count += 1

    f.close()


if __name__ == '__main__':

    rand_str(200,20)


知识点:

1.随机取值:

 random.choice

2.w是写入,wb就是写入二进制文件了。

f = open('file.txt','w')

3.int转为str

str(count)


二、把1中生成的随机码存到数据库中

#-*- coding:utf-8 -*-

'''
02
'''

import string
import random
import pymysql


#用于生成随机字符串List的函数

def geneRandStr(num,len=7):

    strList = []

    for i in range(num):
        restr = ''
        chars = string.ascii_lowercase + string.digits
        for i in range(len):
            restr += random.choice(chars)
        strList.append(restr)
    return strList

#把字符串List存入数据库
def storeInMysql(codeList):

    try:
        conn = pymysql.connect(host='127.0.0.1',user = 'root',
                           password = '123456',db = 'pytest')
        cur = conn.cursor()
    except BaseException as e:
        print(e)
    else:
        try:
            cur.execute('DROP DATABASE pytest ')
            cur.execute('CREATE DATABASE IF NOT EXISTS pytest ')
            cur.execute('USE pytest')
            cur.execute('''CREATE TABLE IF NOT EXISTS code(
              id INT NOT NULL AUTO_INCREMENT,
              code VARCHAR (32) NOT NULL,
              PRIMARY KEY (id)
              )''')

            for code in codeList:
                cur.execute('INSERT INTO code(code) VALUES (%s)',(code))
                cur.connection.commit()

        except BaseException as e:
            print(e)

    finally:
        cur.close()
        conn.close()


if __name__ == '__main__':
    storeInMysql(geneRandStr(20,10))








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值