python实现图书管理系统

  

本文实例为大家分享了python实现图书管理系统的具体代码,供大家参考,具体内容如下

        进口mysql.connector   导入系统,操作系统   导入的时间   进口日期时间   从tkinter进口*   从tkinter。弹出窗口导入*   类Libop:   用户=案?   pwd="   主机=' localhost '   db=巴际楣荨?   data_file=' mysql-test.dat '   def __init__(自我):   print (“init”)   试一试:   self.library=mysql.connector.connect(用户=Libop.user密码=Libop.pwd主机=Libop.host数据库=Libop.db)   self.cursor=self.library.cursor ()   打印(“连接成功”)   mysql.connector除外。错误,犯错:   打印(“WTF !初始错误”)   打印(“错误:{}”.format (err.msg))   sys.exit ()   def选择(自我,str):   试一试:   self.cursor.execute (str)   返回self.cursor.fetchall ()   mysql.connector除外。错误,犯错:   打印(“WTF !选择错误的”)   打印(“错误:{}”.format (err.msg))   打印(str)   showinfo(“错误”,“请输入正确的参数”)   def更新(自我,str):   试一试:   self.cursor.execute (str)   self.library.commit ()   返回1   mysql.connector除外。错误,犯错:   打印(“WTF !更新错误的”)   打印(“错误:{}”.format (err.msg))   返回0   def删除(自我,str):   试一试:   self.cursor.execute (str)   self.library.commit ()   mysql.connector除外。错误,犯错:   打印(“WTF !删除错误的”)   打印(“错误:{}”.format (err.msg))   def插入(自我,str):   试一试:   self.cursor.execute (str)   self.library.commit ()   返回1   mysql.connector除外。错误,犯错:   打印(“WTF !插入错误”)   打印(“错误:{}”.format (err.msg))   返回0   自由=Libop ()   根=Tk ()   根。wm_title(“图书馆系统”)   str1=str2="   book_type=name=年=出版商==price1=price2=命令="作家   cardid="   def call_rent (en1 en2, brok):   相约=en1.get ()   st2=en2.get ()   租金(相约,st2 brok)   def call_return (en1 en2):   相约=en1.get ()   st2=en2.get ()   (相约,st2)   def登录():   str1=ide.get ()   str2=pwde.get ()   卑鄙的人=LIB。选择(“选择manage_id pswd从经理manage_id=皗}”和pswd={}”.format (str1 str2))   如果((杂种狗str1 str2)):   showinfo(“信息”、“登录成功”)   label_book_id=标签(根、文本=' BookID: ') .grid(行=0,列=4,粘性=W)   label_card_id=标签(根、文本=' CardID: ') .grid(行=1,列=4,粘性=W)   entry_book_id=条目(根)   entry_book_id.grid(行=0,列=5,粘性=W)   entry_card_id=条目(根)   entry_card_id.grid(行=1,列=5,粘性=W)   entry_cardid=条目(根)   entry_cardid.grid(=5行,列=0,粘性=W)   #按钮   button_insert=按钮(根、文本=安迦胧椤?命令=inbook)   button_insert.grid(行=0,列=2,粘性=W)   button_return=按钮(根、文本=白馐椤?   button_return.bind (“& lt; ButtonRelease-1>”,λz: call_rent (entry_book_id, entry_card_id str1))   button_return.grid(行=0,列=3,粘性=W)   button_rent=按钮(根、文本=胺祷厥椤?   button_rent.bind (“& lt; ButtonRelease-1>”,λl: call_return (entry_book_id entry_card_id))   button_rent.grid(行=1,列=2,粘性=W)   button_delete=按钮(根、文本=吧境ā?   button_delete.bind (“& lt; ButtonRelease-1>”,λj: deletecard (entry_cardid))   button_delete.grid(=5行,列=2,粘性=W)   button_add=按钮(根、文本=疤砑涌ā?命令=addwindow)   button_add.grid(=3=5行,列,粘性=W)   button_display=按钮(根、文本=跋允臼椤?   button_display.bind (“& lt; ButtonRelease-1>”,λy: display_rent (entry_cardid))   button_display.grid(=5行,列=1,粘性=W)   其他:   showinfo (title='登录失败,消息=" ID或密码错误!”)   #添加一个卡   def addwindow ():   前=最高级的(根)   label_card_id=标签(='卡id: '),文本.grid(行=0,列=0,粘性=W)   label_name=标签(='名称:'),文本.grid(行=1,列=0,粘性=W)   label_unit=标签(='单位:'),文本.grid(行=2,列=0,粘性=W)   label_type=标签(='类型:'),文本.grid(行=3,列=0,粘性=W)   entry_card_id=条目(上)   entry_card_id.grid(行=0,列=1,粘性=W)   entry_name=条目(上)   entry_name.grid(行=1,列=1,粘性=W)   entry_unit=条目(上)   entry_unit.grid(行=2,列=1,粘性=W)   entry_type=条目(上)   entry_type.grid(=3行,列=1,粘性=W)   button_constructe=按钮(上、文本='添加')   button_constructe.bind (“& lt; ButtonRelease-1>”,λ问:addcard (entry_card_id、entry_name entry_unit, entry_type))   button_constructe.grid(行=4)   def addcard (en1 en2, en3 en4):   cardid=en1.get ()   name=en2.get ()   单位=en3.get ()   c_type=en4.get ()   select="从lib_card选择card_id card_id={}”.format (cardid)   如果(c_type不在(“T”,“年代”,“O”)):   showinfo(“错误”,“没有这样的类型”)   返回0   行=LIB.select(选择)   如果(len(线)!=0):   showinfo(“添加失败”,“已经有这个ID !”)   其他:   插入="插入lib_card值(“{}”,“{}”,“{}”,“{}”)“.format (cardid、名称、单位、c_type)   LIB.insert(插入)   showinfo (“ok”,“添加成功”)   返回1   #插入书   def inbook ():   insert_book=最高级的(根)   insert_book。标题(“插入书”)   text_insert=文本(insert_book)   text_insert.pack ()   button_confirm=按钮(insert_book、文本='确认')   button_confirm.bind (“& lt; ButtonRelease-1>”,λx: booksin (text_insert))   button_confirm.pack ()   def booksin (text_insert):   字符串=text_insert.get (“0.0”)   字符串=string.split (“\ n”)   打印(字符串)   行字符串:   如果线==?   打破   行=line.split (" ")   bookid=行[0][1:]   t=行[1]   name=行[2]   出版商=行[3]   年=行[4]   作家=行[5]   价格=行[6]   总=行[7]   股票行=[8](:1)   如果(int(股票)在int(总)或int(价格)& lt; 0):   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

python实现图书管理系统