八月七号 pymysql模組作業

2022-07-26 02:54:10 字數 3161 閱讀 6387

#

嘗試著利用pymysql操作mysql

#完成新建資料庫

#建立使用者表

#插入使用者資料

#並嘗試書寫乙個使用者登入功能(結合mysql資料庫)#並

#.擴充套件題:

#使用者的註冊、使用者的登入

#獲取使用者名稱和密碼之後去之前寫入使用者資訊的檔案中

#比對是否有該使用者名稱和密碼(一行行讀內容、split切割)

import

pymysql

def new_db(): #

建庫建表插資料

conn =pymysql.connect(

host = '

127.0.0.1',

port = 3306,

user = '

root',

password = '

123'

) cur =conn.cursor()

cur.execute(

"create database user character set utf8;")

cur.execute(

"use user;")

cur.execute(

"create table user(u varchar(64),p varchar(255));")

try:

cur.execute(

"insert into user(u,p) values('a','a')")

conn.commit()

print('

開始資料庫插入操作')

except

exception as e:

conn.rollback()

print('

資料庫插入操作錯誤回滾')

finally

: conn.close()

def s_u_db(user): #

查詢使用者資訊

conn =pymysql.connect(

host = '

127.0.0.1',

port = 3306,

user = '

root',

password = '

123'

, database = '

user',

charset = '

utf8')

cur =conn.cursor()

cur.execute(

"select * from user where u='%s'

"%user)

ret =cur.fetchall()

conn.close()

return

dict(ret)

def i_u_db(nu,np): #

寫入資料使用者資訊

conn =pymysql.connect(

host = '

127.0.0.1',

port = 3306,

user = '

root',

password = '

123'

, database = '

user',

charset = '

utf8')

try:

cur =conn.cursor()

cur.execute(

"insert into user(u,p) values('%s','%s')

"%(nu,np))

conn.commit()

except

exception as e:

conn.rollback()

return'x

'finally

: conn.close()

def sign(): #

登入 uu = input('

請輸入使用者名稱:

').strip()

up = input('

請輸入密碼:

').strip()

s =s_u_db(uu)

if s =={}:

print('

使用者不存在')

elif s[uu] ==up:

input(

'登入成功')

global

a a =0

else

:

print('

密碼錯誤')

def register(): #

註冊 nu = input('

請輸入使用者名稱:

').strip()

if s_u_db(nu) !={}:

print('

使用者名稱已存在!')

else

: np1 = input('

請輸入密碼:

').strip()

np2 = input('

請確認密碼:

').strip()

if np1 !=np2:

print('

兩次密碼不同')

else

: c =i_u_db(nu,np1)

if c == 'x'

:

print('

註冊失敗')

else

:

print('

註冊成功')

#目錄catalog =

#錨變數

a = 1b =none

#主程式

while a == 1:

for i in

catalog:

print('

%s\t%s

'%(i,catalog[i][0]))

b = input('

請輸入指令:')

if b == "0"

:

break

elif b in

catalog:

catalog[b][1]()

else

:

print('

命令不存在

')

八月五號作業

1.去重並且保留原來的元素順序 l a b 1,a a l a b 1,a a nl for i in l if i not in nl print nl 針對不可變型別,並且保證順序則需要我們自己寫 實現,例如 l l nl for i in l if i not in nl print nl 2...

八月6號集訓筆記

上午一開始打了一波字,感覺比昨天狀態好多了。補了自己昨天在cf上做的幾道題 我怎麼就是推不出題目中的數學規律呢 看了樹狀陣列那一節的內容,感覺從第四章開始,內容就比前三章難懂了。主要是要能夠靈活運用前三章的內容,才能更好理解後面的內容。前面的內容還是要常回去看看 下午做了遞迴的一道題,離散化的一道題...

八月7號集訓筆記

上午,照常先打字,已經可以穩定在不看鍵盤每分鐘100 寫了集訓以來的第一篇解題報告,以後會多寫的。看了看昨天比賽的c題,發現如果昨天讀題快一點說不定就ak了呢。剩下的時間,看了看線段數的內容。下午,做了一道排序的題目 七夕祭 看了好久的題解,終於明白什麼叫做溫故而知新。又去做了一道以前做過的貪心題目...