python-mysql-redis

'''
做為 Apple Store App 獨立開發(fā)者彤枢,你要搞限時促銷,為你的應(yīng)用生成激活碼(或者優(yōu)惠券),
使用 Python 如何生成 200 個激活碼(或者優(yōu)惠券)?
將 生成的 200 個激活碼(或者優(yōu)惠券)保存到 MySQL 關(guān)系型數(shù)據(jù)庫中钉汗。
將生成的 200 個激活碼(或者優(yōu)惠券)保存到 Redis 非關(guān)系型數(shù)據(jù)庫中羹令。
'''

生成200個隨機字符串,XXXX-XXXX-XXXX-XXXX

'''
a-z:97-122
A-Z:65-90
0-9:48-57
'''

import random
import pymysql
import redis

class randomChar(object):
    """docstring for randomChar"""
    def randomString(self):
        list = []
        for i in range(48,58):
            list.append(i)
        for i in range(65,91):
            list.append(i)
        for i in range(97,123):
            list.append(i)
        ranS = ''
        for j in range(4):
            for i in range(4):
                index = random.choice(list)
                ranS += chr(index)
            if j != 3:
                ranS += '-'
        return ranS

連接MySql數(shù)據(jù)庫

class MySqlOperation(object):
    #mysqlRedis
    def __init__(self):
        self.conn = pymysql.connect(host='localhost',
                                    user='root',
                                    password='11111111',
                                    db='reptile',
                                    port=3306,
                                    charset='utf8',
                                    cursorclass=pymysql.cursors.DictCursor)
        self.cur = self.conn.cursor()
    def op_sql(self, params):
        try:
            self.cur.execute(params)
            self.conn.commit()
            return True
        except pymysql.Error as e:
            print('MySQL Error %d:%s' % (e.args[0], e.args[1]))
        return False

    def insertCode(self, code):
        sql = "insert into mysqlRedis(code) values('%s')" % code
        if not self.op_sql(sql):
            print('insert error %s' % code)
        else:
            print('success')

    def selectCode(self):
        sql = "select code from mysqlRedis"
        try:
            self.cur.execute(sql)
            self.cur.scroll(0, mode='absolute') # 光標回到初始位置
            results = self.cur.fetchall() # 返回游標中所有結(jié)果
        except pymysql.Error as e:
            results = 'sql0001' # 數(shù)據(jù)庫執(zhí)行失敗
            print("MySQL Error %d: %s" % (e.args[0], e.args[1]))
        finally:
            return results

連接redis數(shù)據(jù)庫

class RedisOperation(object):
    def __init__(self):
        pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
        self.r = redis.Redis(connection_pool=pool)

向mysql中插入數(shù)據(jù)

for i in range(200):
    randC = randomChar()
    code = randC.randomString()
    operation = MySqlOperation()
    operation.insertCode(code)

查詢mysql數(shù)據(jù)并存儲在redis中

operation = MySqlOperation()
ro = RedisOperation()
r = ro.r
r.delete('codes')
for code in operation.selectCode():
    r.sadd('codes', code['code'])
print(r.smembers('codes'))
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市损痰,隨后出現(xiàn)的幾起案子福侈,更是在濱河造成了極大的恐慌,老刑警劉巖卢未,帶你破解...
    沈念sama閱讀 217,406評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肪凛,死亡現(xiàn)場離奇詭異,居然都是意外死亡辽社,警方通過查閱死者的電腦和手機伟墙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評論 3 393
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來滴铅,“玉大人戳葵,你說我怎么就攤上這事∈ⅲ” “怎么了譬淳?”我有些...
    開封第一講書人閱讀 163,711評論 0 353
  • 文/不壞的土叔 我叫張陵档址,是天一觀的道長盹兢。 經(jīng)常有香客問我,道長守伸,這世上最難降的妖魔是什么绎秒? 我笑而不...
    開封第一講書人閱讀 58,380評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮尼摹,結(jié)果婚禮上见芹,老公的妹妹穿的比我還像新娘。我一直安慰自己玄呛,他們只是感情好徘铝,可當(dāng)我...
    茶點故事閱讀 67,432評論 6 392
  • 文/花漫 我一把揭開白布惯吕。 她就那樣靜靜地躺著惕它,像睡著了一般。 火紅的嫁衣襯著肌膚如雪废登。 梳的紋絲不亂的頭發(fā)上淹魄,一...
    開封第一講書人閱讀 51,301評論 1 301
  • 那天,我揣著相機與錄音堡距,去河邊找鬼甲锡。 笑死兆蕉,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的搔体。 我是一名探鬼主播疚俱,決...
    沈念sama閱讀 40,145評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼劝术,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了呆奕?” 一聲冷哼從身側(cè)響起养晋,我...
    開封第一講書人閱讀 39,008評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎绳泉,沒想到半個月后零酪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,443評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡拇勃,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,649評論 3 334
  • 正文 我和宋清朗相戀三年四苇,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片方咆。...
    茶點故事閱讀 39,795評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡月腋,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出瓣赂,到底是詐尸還是另有隱情榆骚,我是刑警寧澤,帶...
    沈念sama閱讀 35,501評論 5 345
  • 正文 年R本政府宣布煌集,位于F島的核電站妓肢,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏苫纤。R本人自食惡果不足惜碉钠,卻給世界環(huán)境...
    茶點故事閱讀 41,119評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望方面。 院中可真熱鬧放钦,春花似錦、人聲如沸恭金。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽横腿。三九已至颓屑,卻和暖如春斤寂,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背揪惦。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評論 1 269
  • 我被黑心中介騙來泰國打工遍搞, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人器腋。 一個月前我還...
    沈念sama閱讀 47,899評論 2 370
  • 正文 我出身青樓溪猿,卻偏偏與公主長得像,于是被迫代替她去往敵國和親纫塌。 傳聞我的和親對象是個殘疾皇子诊县,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,724評論 2 354

推薦閱讀更多精彩內(nèi)容