zoukankan      html  css  js  c++  java
  • 学员管理系统-面向对象

     1 import json
     2 import os
     3 
     4 
     5 class DataToDB():
     6 
     7     def readData(self):
     8         if os.path.exists('data.txt'):
     9             with open('data.txt', 'r+', encoding='utf-8') as fp:
    10                 content = fp.read()
    11         else:
    12             content = False
    13 
    14         if content:
    15             return json.loads(content)
    16         else:
    17             return []
    18 
    19     def writeData(self, data):
    20         content = json.dumps(data)
    21         with open('data.txt', 'w+', encoding='utf-8') as fq:
    22             fq.write(content)
    23 
    24 
    25 class StudentInfo():
    26 
    27     def __init__(self):
    28         self.db = DataToDB()
    29         self.stuList = self.db.readData()
    30 
    31     #
    32     def add(self, code, name, age):
    33         stuinfo = {}
    34         stuinfo['code'] = code
    35         stuinfo['name'] = name
    36         stuinfo['age'] = age
    37         self.stuList.append(stuinfo)
    38 
    39         self.db.writeData(self.stuList)
    40 
    41     #
    42     def delete(self, code):
    43         for item in self.stuList:
    44             if code == item['code']:
    45                 self.stuList.remove(item)
    46 
    47         self.db.writeData(self.stuList)
    48 
    49     #
    50     def edit(self, code, name, age):
    51         for item in self.stuList:
    52             if code == item['code']:
    53                 item['name'] = name
    54                 item['age'] = age
    55 
    56         self.db.writeData(self.stuList)
    57 
    58     #
    59     def select(self):
    60         for item in self.stuList:
    61             print(item)
    62 
    63 
    64 stu = StudentInfo()
    65 while True:
    66     print("请选择您要进行的操作")
    67     checked = input("添加(A),修改(E),删除(D),查询(C),退出(Q)")
    68     if checked == 'a':
    69         code = input('请输入学号')
    70         name = input('请输入姓名')
    71         age = input('请输入年龄')
    72         stu.add(code, name, age)
    73     elif checked == 'e':
    74         code = input('请输入需要修改的学号')
    75         print('-----------------请输入新的学员信息------------------')
    76         name = input('请输入姓名')
    77         age = input('请输入年龄')
    78         stu.edit(code, name, age)
    79     elif checked == 'd':
    80         code = input('请输入需要删除的学号')
    81         stu.delete(code)
    82     elif checked == 'c':
    83         stu.select()
    84     elif checked == 'q':
    85         exit('拜拜了,您嘞~')
  • 相关阅读:
    5.1.5 JunkMail Filter
    POJ1067 取石子游戏 跪跪跪,很好的博弈论
    USACO Section 3.2 Magic Squares (msquare)
    5.1.1 A Bug's Life
    USACO Section 3.3 Riding The Fences (fence)
    USACO Section 3.1 Stamps (stamps)
    5.2.7 Entropy
    USACO Section 3.1 AgriNet (agrinet)
    5.1.8 How Many Answers Are Wrong
    4.3.6 N皇后问题
  • 原文地址:https://www.cnblogs.com/renshaoqi/p/10182078.html
Copyright © 2011-2022 走看看