精华内容
下载资源
问答
  • 【原创】python编写图书管理系统

    千次阅读 2019-11-08 19:23:45
    【原创】python编写图书管理系统 实现功能:1)打印系统列表(书号,作者姓名,标题,出版社,定价);2)增加一本新书;3)查找一本书;4)删除一本书;5)离开系统;6)保存系统数据到文件中;7)从文件中加载旧...

    【原创】python编写图书管理系统

    • 实现功能:1)打印系统列表(书号,作者姓名,标题,出版社,定价);2)增加一本新书;3)查找一本书;4)删除一本书;5)离开系统;6)保存系统数据到文件中;7)从文件中加载旧数据。
    # -*- coding: utf-8 -*-
    import sys
    import copy
    
    database=[]
    
    #1,从文件中读取图书信息
    
    users=[['admin','admin'],['user','user']]
    #flag=False     #状态码,判断是否登录成功
    
    
    
    #####################################
    #######以下为各个函数#################
    
    def load_database():
        #实现加载数据库
    
        f=open('D:/text.txt')
    
        line=f.readline().strip() #先打开第一行
    
        #filesize=f.st_size #显示加载过程
        # fileload=0
    
        #循环读取每一行
        while line:
            db=line.strip().split(' ')
            database.append(db)
    
            #fileload+=len(line)
            # print "Having load %2.2f%"%(fileload/filesize)
    
            line=f.readline().strip()
    
        print ('LOAD SUCCESS!')
    
        print(database)#测试!!!!
    
        f.close()
    
    
    def add_database():
        #实现数据录入保存
        book_num=input(u'输入书号:')
        author=input(u'输入作者:')
        title=input(u'输入标题:')
        publishing=input(u'输入出版社:')
        price=input(u'输入定价:')
        database.append([book_num,author,title,publishing,price])
        print ('录入成功!')
        
    
    def text_save():
        f=open('D:/text.txt','w')
        for i in range(len(database)):
            for j in range(len(database[i])):
                f.write(database[i][j][:])
                f.write(' ')
            f.write('\n')
            f.flush()
        
        f.close()
    
    
    
    
    def fun():
        #实现书籍查询,增加,删除,显示功能
    
        load_database()
        
        while True:
    
            print('\n***************************************')
    
            print('********  增加书籍--------1  **********')
    
            print('********  删除书籍--------2  **********')
    
            print('********  查找书籍--------3  **********')
    
            print('********  修改书籍--------4  **********')
    
            print('********  查看所有书籍----5  **********')
    
            print('********  返回主界面------6  **********')
    
            print('********  退出------------0  **********')
    
            print('***************************************\n')
    
            value=int(input('请输入对应数字:'))
            if value==1:
                add_database()
            elif value==2:
                delete_database()
            elif value==3:
                find_database()
            elif value==4:
                change_database()
            elif value==5:
                show_all_database()
            elif value==6:
                main()
            elif value==0:
                text_save()
                sys.exit(0)
    
    
    def delete_database():
        #实现删除数据功能
        find_database()
        print ("是否确认删除?y/n:")
        xx='n'
        xx=input('')
        if xx=='y':
            del database[find_to_del]
            print ("删除成功!")
    
    
        
    def show_all_database():
        print ('\n-----------------------------------------------------------------------------------')
        print ('       书号         作者             标题               出版社         定价          ')
    
        for i in range(len(database)):
            for j in range(len(database[i])):
                print("%10s"%database[i][j],end="")
            print ('\n')
        print ('--------------------------------------------------------------------------------------\n')
    
    find_to_del=None
    
    def find_database():
        print ("搜索书号请输入1")
        print ("搜索作者请输入2")
        print ("搜索标题请输入3")
        
        v=int(input())
    
        key=input('请输入书号/作者/标题:')
        long=range(len(database))
    
        global find_to_del
    
        if v==1:
            for i in long:
                if key==database[i][0]:
                    print (database[i][0])
                    print (database[i][1])
                    print (database[i][2])
                    print (database[i][3])
                    print (database[i][4])
                    find_to_del=i
                    print (find_to_del)
                    break
    
            if i==long[-1]:
                print ("无此书号,请重新输入!")
        if v==2:
            for i in long:
                if key==database[i][1]:
                    print (database[i][0])
                    print (database[i][1])
                    print (database[i][2])
                    print (database[i][3])
                    print (database[i][4])
                    find_to_del=i
                    print (find_to_del)
                    break
    
            if i==long[-1]:
                print ("无此作者,请重新输入!")
        if v==3:
            for i in long:
                if key==database[i][2]:
                    print (database[i][0])
                    print (database[i][1])
                    print (database[i][2])
                    print (database[i][3])
                    print (database[i][4])
                    find_to_del=i
                    print (find_to_del)
                    break
    
            if i==long[-1]:
                print ("无此作者,请重新输入!")
            #此处只查找一此,可加上循环,重复查找!!!
            
    
            
    def change_database():
        #修改数据库内容
        find_database()
        xx='n'
        xx=input('是否确认修改此数据?y/n') 
        if xx=='y':
            database[find_to_del][0]=input('请输入修改后的书号:')    
            database[find_to_del][1]=input('请输入修改后的作者:')    
            database[find_to_del][2]=input('请输入修改后的标题:')    
            database[find_to_del][3]=input('请输入修改后的出版社:')    
            database[find_to_del][4]=input('请输入修改后的定价:')
            print ("修改成功!")
    
    
    
    def login():
        #实现登录
        username=input(u'please import name:')
        password=input(u'please import password:')
        if [username,password] in users:
            print ("login success!")
            fun()
        else:
            print ("Your username or password is false.please login again!")
    
    def register():
        #实现注册
    
        username=input(u'please import name:')
        #此处使用raw_input()函数失败!!
    
    
        password=input(u'please import password:')
        users.append([username,password])
        print ("register success!")
    
    
    def main():
        while 1:
            print('\n\n    **********************')
    
            print('    *欢迎来到图书管理系统*')
    
            print('    **********************\n')
    
            print('*********************************')
    
            print('******   登录-------1  **********')
    
            print('******   注册-------2  **********')
    
            print('******   退出-------0  **********')
    
            print('*********************************\n')
    
            v=int(input('请输入对应的数字:'))
    
            if v==2:
    
                register()
    
            elif v==1:
    
                login()
              
                
    
            elif v==0:
                text_save()
    
                sys.exit(0)
        
    
    
    main()
    
    
    
    
    展开全文
  • 该程序没有图形化界面,并且不会保存数据。可以在pycharm中运行,或者将它打包成一个exe文件,然后再cmd中运行。 import os class Student(object): def print_menu(self): ... print("学生名片管理系统V1.0"...

    该程序没有图形化界面,并且不会保存数据。可以在pycharm中运行,或者将它打包成一个exe文件,然后再cmd中运行。

    import os
    class Student(object):
        def print_menu(self):
            """打印菜单"""  # 函数文档说明
            print("=" * 50)
            print("学生名片管理系统V1.0")
            print("1、添加学生名片")
            print("2、查找学生名片")
            print("3、修改学生名片")
            print("4、删除学生姓名")
            print("5、显示所有学生名片")
            print("6、保存学生名片")
            print("0、退出系统")
            print("=" * 50)
        def add_infor(self):
            new_name = input("请输入姓名:")
            new_sex = input("请输入性别:")
            new_phone = input("请输入手机号:")
            new_class = input("请输入班级:")
            # 创建字典
            new_infor = {}
            # 将一个学生的信息存进字典
            new_infor["name"] = new_name
            new_infor["sex"] = new_sex
            new_infor["phone"] = new_phone
            new_infor["class"] = new_class
            # 将一个学生名片存储到列表中。
            # 列表的添加操作:append() 排队、insert()插队、extend()连接合并
            global card_infors
            card_infors.append(new_infor)
    
        def find_infor(self):
            """根据姓名查找名片"""
            find_name = input("请输入要查找的学生姓名:")
            # 遍历列表中的每一个字典,判断键name对应的值是不是要查找的姓名
            global card_infors
            for temp in card_infors:
                if temp["name"] == find_name:  # 找到了
                    # 显示该名片信息
                    print("姓名:{}\t性别:{}\t手机号:{}\t班级:{}".format(temp["name"], temp["sex"], temp["phone"], temp["class"]))
                    break
            else:
                print("{}不存在".format(find_name))
    
        def modify_infor(self):
            """根据姓名修改名片"""
            old_name = input("请输入要修改的姓名:")
            new_name = input("请输入新的姓名:")
            new_sex = input("请输入新的性别:")
            new_phone = input("请输入新的手机号:")
            new_class = input("请输入新的班级:")
            # 根据姓名定位到名片
            global card_infors
            for temp in card_infors:
                if temp["name"] == old_name:
                    temp["name"] = new_name
                    temp["sex"] = new_sex
                    temp["phone"] = new_phone
                    temp["class"] = new_class
                    print("修改成功!")
                    break
            else:
                print("{}不存在,修改失败!".format(old_name))
    
        def delete_infor(self):
            """根据姓名删除学生名片"""
            del_name = input("要删除的学生姓名:")
            # 根据姓名定位到要删除的名片
            global card_infors
            for temp in card_infors:
                if temp["name"] == del_name:  # 找到了要删除的名片
                    # 列表的删除操作:del[下标]、pop、remove(元素)
                    card_infors.remove(temp)
                    print("删除成功!")
                    break
            else:
                print("{}不存在,删除失败!".format(del_name))
    
        def show_infor(self):
            """显示学生名片"""
            global card_infors
            if len(card_infors) > 0:
                print("学生名片如下:")
                for temp in card_infors:
                    # 显示字典中每一个元素的值
                    print("姓名:{}\t性别:{}\t手机号:{}\t班级:{}".format(temp["name"], temp["sex"], temp["phone"], temp["class"]))
            else:
                print("没有学生名片信息!")
    
        def save_infor(self):
            """保存学生名片信息到文件backup.data中"""
            try:
                with open("backup.data", "w") as save_file:
                    save_file.write(str(card_infors))
            except Exception as err:
                print("异常发生了:", err)
                print("保存失败")
            else:
                print("保存成功!")
    
        def load_infor(self):
            """加载文件backup.txt中的内容到card_infors"""
            if os.path.isfile("backup.data"):
                try:
                    with open("backup.data") as f:
                        content = f.read()
                        global card_infors
                        card_infors = eval(content)
                except:
                    pass
    
    card_infors = []
    stu=Student()
    while True:
        stu.print_menu()
        try:
            stu.load_infor()
            num=int(input('请输入功能序号:'))
            if num==1:
                stu.add_infor()
            elif num==2:
                stu.find_infor()
            elif num==3:
                stu.modify_infor()
            elif num==4:
                stu.delete_infor()
            elif num==5:
                stu.show_infor()
            elif num==6:
                stu.save_infor()
            elif num==0:
                quitconfirm = input("亲,真的要退出么 (yes或者no)")
                if quitconfirm == 'yes':
                    print("程序结束,谢谢使用。")
                    break
            else:
                print("输入错误,请重新输入。")
        except ValueError:
            print('请输入数字。')
    
    
    
    
    
    
    
    
    展开全文
  • Python编写简单的学生管理系统 一共两个文件,其中一个定义函数,另一个是主程序,调用函数,运行程序 CMS.py ''' 编写“学生信息管理系统”,要求如下: 必须使用自定义函数,完成对程序的模块化 学生信息至少包含...
  • python编写一个产品管理系统

    千次阅读 2020-06-22 16:05:28
    python编写一个产品管理系统 今天给大家分享一个cj简单的管理系统,具体内容如下: 综合运用Python数据类型、运算符、控制语句、函数模块、文件等相关知识点,编写一个产品管理系统,系统要求实现如下功能 系统主要...

    python编写一个产品管理系统

    今天给大家分享一个cj简单的管理系统,具体内容如下:
    综合运用Python数据类型、运算符、控制语句、函数模块、文件等相关知识点,编写一个产品管理系统,系统要求实现如下功能
    系统主要模块:
    1.产品系统的登入
    2.产品界面功能
    3.产品添加
    4.产品删除
    5.产品查询
    6.产品显示
    7.产品信息数据的保存和打开
    8.系统的退出
    在这里插入图片描述
    骗人的吧,有那么简单吗???
    在这里插入图片描述
    兄弟们,不多比比!见代码,见注释!

    product_list = []#建一个空列表,用来存产品数据
    product_name = ["编号","价格","名称","品牌","类别"]#建一个列表,用来存选择名称
    
    def begin():    # 1:产品系统的登入功能
        password = "帅"#密码
        print("==============================")
        while(True):
            passwords = input("账号:我帅吗?\n请输入密码:")
            if (password == passwords):
                print("你输入的密码是正确的")
                break
            else:
                print("你输入的密码是错误的")
                
        print("==============================")
    
    def fun_1():    #3:产品添加设计
        product_number = input("请输入产品的编号:")
        product_price = input("请输入产品的价格:")
        product_name = input("请输入产品的名称:")
        product_brand = input("请输入产品的品牌:")
        product_type = input("请输入产品的类别:")
    
                
        product_dict = {#字典存数据
            "编号": product_number,
            "价格": product_price,
            "名称": product_name,
            "品牌": product_brand,
            "类别": product_type
        }
    
        product_list.append(product_dict)#再将字典加入列表
        
            
    def fun_2():    #4、产品删除设计
        print("1.按编号;2.按价格;3.产品名称;4.品牌;5.类别")
        while(True):
            do_number = input("请输入你要选择的操作:")
            if(do_number.isdigit()):
                do_number = int(do_number)
                if do_number > 0 and do_number < 6:
                    do_name = input("具体的值是:")
                    break     
        def switch(do_number,do_name):
            for i in product_list:
                if i[product_name[do_number-1]] == do_name:#遍历列表中的字典的值与之作比较
                    product_list.remove(i)
                    print("删除成功!")
                
            
        switch(do_number,do_name)            
              
    def fun_3():    #5:产品查询功能
        print("1.按编号;2.按价格;3.产品名称;4.品牌;5.类别")
        while(True):
            do_number = input("请输入你要选择的操作:")
            if(do_number.isdigit()):
                do_number = int(do_number)
                if do_number > 0 and do_number < 6:
                    do_name = input("具体的值是:")
                    break
        def switch_do_name(do_number,do_name):
            if product_list:#如果列表不为空   
                for i in product_list:
                    if i[product_name[do_number-1]] == do_name:
                        print("""
            产品信息如下:\n
              编号  价格  产品名称     品牌     类别\n
                 """)
                        print("",end = "(\t")
                        for key in i:
                            print(i[key],end = "\t")
                        print("",end = ")\t")
            else:
                print("产品信息为空!")
        switch_do_name(do_number,do_name)
        
    def fun_4():    #6:产品显示设计
        print("""
        产品信息如下:\n
          编号  价格  产品名称     品牌     类别
         """)
        for i in product_list:
                print("",end = "(\t")
                for key in i:
                    print(i[key],end = "\t")
                print("",end = ")\t\n")
      
    
    def fun_5(): #7、产品信息数据的保存和打开设计,把产品保存在product.txt里
    
        product_file = open('product.txt', 'w')#打开product.txt文件存储数据,没有则创建
        for i in product_list:
            for j,k in i.items():
                product_file.write(j + ":" + str(k))#文件写入
                product_file.write("\t")
            product_file.write("\n")
        product_file.close()  #文件关闭
        print("保存产品数据成功!")
    
    def main():#主函数
        begin()# 1:产品系统的登入功能
        while(True):
            # 2:产品界面功能设计
            print('''
            ==============================
                  产品管理系统v1.0
            1.添加产品信息
            2.删除产品信息
            3.查询产品信息
            4.显示所有产品信息
            5.建立、保存、关闭数据文件
            0.退出系统
            ==============================
            ''')
            number = input("请输入要选择的功能编号:")
            if number == "1": #3:产品添加设计
                fun_1()
            elif number == "2":#4、产品删除设计
                fun_2()
            elif number == "3":#5:产品查询功能
                fun_3()
            elif number == "4":#6:产品显示设计
                fun_4()
            elif number == "5":#7、#建立、保存、关闭数据文件
                fun_5()
            elif number == "0":#8:系统的退出
                print("退出成功!")
                break
            else:
                print("输入错误!")
    if __name__== '__main__':
        main()#调用主函数
    
    

    部分运行截图:
    在这里插入图片描述
    不会吧,啊sir!这么简单,你们都会了是吧。
    在这里插入图片描述
    记得点赞,宝贝萌。

    展开全文
  • # 功能:学生信息管理系统 # 开发时间: 2020/10/23 20:05 #定义一个文件对象用于对学生信息数据进行保存 import os filename='student.txt' # 进行程序主函数的定义 def main(): while True: # 调用菜单函数页面...
    # 功能:学生信息管理系统
    # 开发时间: 2020/10/23  20:05
    #定义一个文件对象用于对学生信息数据进行保存
    import os
    filename='student.txt'
    # 进行程序主函数的定义
    def main():
        while True:
            # 调用菜单函数页面来另其显示到控制台当中去
            menum()
            choice=int(input("请进行选择\n"))
            if choice in [0,1,2,3,4,5,6,7]:
                if choice==0:
                    answer=input("您确定要退出系统吗?y/n\n")
                    if answer=='y' or answer=='Y':
                        print("谢谢您的使用\n")
                        break
                    else:
                        continue
                elif choice==1:
                    # 对学生信息数据进行录入操作
                    insert()
                elif choice==2:
                    #对学生信息进行查找操作
                    search()
                elif choice==3:
                    # 对学生信息进行删除操作
                    delete()
                elif choice==4:
                    #对学生信息进行修改操作
                    modify()
                elif choice==5:
                    #对学生信息进行排序
                    sort()
                elif choice==6:
                    #对学生对象的总人数进行统计
                    total()
                elif choice==7:
                    # 对所有的学生信息进行显示
                    show()
    
    # 进行学生菜单页面函数的定义
    def menum():
        print("=============学生信息管理系统================")
        print("----------------功能菜单--------------------")
        print("         1.录入学生信息")
        print("         2.查找学生信息")
        print("         3.删除学生信息")
        print("         4.修改学生信息")
        print("         5.排序")
        print("         6.统计学生总人数")
        print("         7.显示所有学生信息")
        print("         0.退出系统")
        print("===========================================")
    def insert():
        student_list=[]#用于实现对学生信息对象进行存放
        while True:
            id=input('请输入学生ID:')
            if not id:#当当前的id值为空的时候则结束循环
                break
            name=input('请输入姓名:')
            if not name:#当name值为空的时候
                break
            try:
                english=int(input('请输入英语成绩:'))
                python = int(input('请输入python成绩:'))
                java=int(input('请输入java成绩:'))
            except:
                print('输入无效,所输入的成绩类型不是整型')
                continue
            #对当前所录入的学生对象信息进行保存
            student= {'id':id,'name':name,'english':english,'python':python,'java':java}
            student_list.append(student)
            answer=input('是否继续进行数据的添加:y/n')
            if answer=='y':
                continue
            else:
                break
        #调用save方法来实现将当前所输入的学生信息存放到文件对象当中去
        save(student_list)
        print("学生信息数据录入完毕")
    def save(list):
        try:
            student_txt=open(filename,'a',encoding='utf-8')
        except:
            student_txt=open(filename,'w',encoding='utf-8')
        #文件创建完毕之后,开始将列表对象当中的数据写入到当前的文件对象当中去
        for item in list:
            student_txt.write(str(item)+'\n')
        student_txt.close()
    def search():
        student_query=[]#定义一个列表对象用于实现对学生对象当中的信息进行存放
        while True:
            id=''
            name=''
            if os.path.exists(filename):#判断当前路径当中是否存在存放学生信息的文件对象
                mode=input('按照id查找输入1,按姓名查找输入2\n')
                if mode=='1':
                    id=input('请输入id值:')
                elif mode=='2':
                    name=input('请输入姓名:')
                else:
                    print("您的输入有误")
                    search()
                #当文件对象存在并没有错误的时候,开始对文件对象当中的数据信息进行读取
                with open(filename,'r',encoding='utf-8') as rfile:
                    #将文件对象当中的所有的数据信息读取出来,此时所有的数据信息都成为一个字符串对象
                    students=rfile.readlines()#将文件当中的每一行作为列表对象的一个元素进行读取
                    #对列表对象当中的元素进行遍历
                    for item in students:
                        #将当前所遍历到的列表当中的字符串元素对象转变为字典元素对象
                        d=dict(eval(item))
                        if id != '':
                            if d['id']==id:
                                student_query.append(d)#将当前的字典对象存放到学生查询列表当中去
                        elif name != '':  # 当名字不为空的时候按照名字来查询
                            if d['name']==name:
                                student_query.append(d)
                #对查询到的学生信息进行显示输出
                show_student(student_query)
                #对查询到的学生列表对象进行清除操作
                student_query.clear()
                answer=input("是否要继续进行学生信息的查询操作?y/n\n")
                if answer=='y':
                    continue
                elif answer=='n':
                    break
            else:
                print("暂时还没有学生数据")
                return
    def show_student(list):
        if len(list)==0:
            print('没有查询到学生信息')
            return
        else:
            #定义标题的显示格式
            format_title='{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^8}\t'
            print(format_title.format('ID','姓名','英语成绩','Python成绩','java成绩','总成绩'))
            #定义内容的显示格式
            format_data='{:^6}\t{:^12}\t{:^8}\t{:^10}\t{:^10}\t{:^8}\t'
            for item in list:
                print(format_data.format(item.get('id'),
                                         item.get('name'),
                                         item.get('english'),
                                         item.get('python'),
                                         item.get('java'),
                                         int(item.get('english'))+int(item.get('python'))+int(item.get('java'))
                                         )
                      )
    def delete():
        while True:
            student_id=input('请输入所要删除的学生对象的id值:')
            if not student_id:
                break
            else:
                if os.path.exists(filename):#判断在当前的系统路径下是否存在该文件对象
                    #当student.txt文件对象存在的时候,将文件对象当中的信息读取到file文件对象当中去
                    with open(filename,'r',encoding='utf-8') as file:
                        student_old=file.readlines()#将文件对象当中的所有数据读取到一个列表当中去
                else:#当在当前系统目录当中没有存放学生信息的文件对象的时候
                    student_old=[]#则读取一个空列表学生对象信息
                flag=False#用于表示指定的学生对象信息是否进行删除操作
                if student_old:#表明读取到了原来的文件信息数据
                    with open(filename,'w',encoding='utf-8') as wfile: #重新对student.txt文件对象进行更新操作
                        d={}
                        for item in student_old:#对原有学生列表对象当中的信息进行遍历
                           d=dict(eval(item))#将当前所遍历到的字符串对象转变为字典类型存放到空字典d当中
                           if d['id']!=student_id:
                                wfile.write(str(d)+'\n')#将字典对象当中的数据重新转变为字符对象写入到文件当中
                           else:
                                flag=True
                        if flag:
                            print(f"id为{student_id}的学生信息已经被删除")
                        else:
                            print(f"没有找到id为{student_id}的学生对象")
                else:#表明没有从磁盘文件当中读取到任何数据
                    print("没有学生信息")
                    break
                show()#重新对文件当中的所有学生信息数据进行显示
                answer=input('是否继续对学生对象信息进行重新删除?y/n')
                if answer=='y':
                    continue
                else:
                    break
    
    def modify():
        show()
        if os.path.exists(filename):
            with open(filename,'r',encoding='utf-8') as rfile:
                #对去文件当中原来的学生信息列表,没一条学生信息数据作为列表对象当中的一个元素值
                student_old=rfile.readlines()
                # print(student_old)
        else:#当学生文件对象不存在的时候直接返回空
            return
        student_id=input('请输入学生对象的id值:')
        #遍历当前内存当中的学生列表信息值并对相应的学生id值进行修改
        with open(filename,'w',encoding='utf-8') as wfile:
            d={}
            #遍历当前内存当中已经读取到的学生信息
            for item in student_old:
                d = dict(eval(item))
                if d['id']==student_id:
                    while True:
                        try:
                            d['name'] = input('请输入姓名:')
                            d['english'] =int(input('请输入英语:'))
                            d['python'] = int(input('请输入python成绩:'))
                            d['java'] =int(input('请输入java成绩:'))
                        except:
                            print('您的输入有误,请重新进行输入操作')
                        break
                    wfile.write(str(d)+'\n')
                    print('修改成功!!!')
                else:#没有找到要进行修改的学生对象
                    wfile.write(str(d)+'\n')
            answer=input('是否要对其它学生对象的信息进行修改?y/n')
            if answer=='y':
                modify()
            else:
                return
    def sort():
        show()#先调用show方法来实现对文件当中的所有学生信息进行显示
        if os.path.exists(filename):
            with open(filename,'r',encoding='utf-8') as rfile:
                students_new=[]#用于存放排序好之后的学生列表
                students=rfile.readlines()
                for item in students:
                    d=dict(eval(item))#将当前所遍历到的列表元素对象转变为字典对象
                    students_new.append(d)#将转变之后的字典对象添加到列表当中去
            asc_or_desc=input("请选择列表的排序方式:0为升序、1为降序\n")
            if asc_or_desc=='0':
                flag=False
            elif asc_or_desc=='1':
                flag=True
            else:
                print("您的输有误,请重新进行输入")
                sort()
            mode=input("请选择排序的方式:1.按英语成绩排序.2.按python成绩排序.3.按java成绩排序.0.按照总成绩排序.\n")
            if mode=='1':
                '''
                    lambda item:int(students_new['english']) lambda相当于是匿名函数,遍历列表对象当中English
                    lambda 写一个匿名函数对象
                    stu 代表遍历当到的列表对象当中的字典元素
                    stu[english] 获取字典元素当中的英语成绩作为key值来进行排序操作
                '''
                students_new.sort(key=lambda stu:int(stu['english']) ,reverse=flag)
            elif mode=='2':
                students_new.sort(key=lambda stu:int(stu['python']) ,reverse=flag)
            elif mode=='3':
                students_new.sort(key=lambda stu:int(stu['java']) ,reverse=flag)
            elif mode=='0':
                students_new.sort(key=lambda stu:int(stu['english']+stu['python']+stu['java']) ,
                                  reverse=flag)
            else:
                print("您的输入有误,请重新进行输入.")
                sort()
            print("调用show_student方法")
            show_student(students_new)#对排序好之后的新列表进行输出
            answer=input("是否继续执行排序操作?y/n\n")
            if answer=='y':
                sort()
            elif answer=='n':
                pass
        else:
            print("当前路径当中没有保存学生信息对象")
    def total():
        #统计当前文件夹当中的学生总人数
        if os.path.exists(filename):
            with open(filename,'r',encoding='utf-8') as rfile:
                students=rfile.readlines()
                if students:#将文件当中的学生信息读取到列表当中去
                    print(f"一共有{len(students)}名学生")
                else:
                    print("当前学生文件当中还没有进行学生信息的录入操作")
        else:
            print("在指定的路径下没有学生信息文件对象")
    def show():
        student_list=[]
        if os.path.exists(filename):
            with open(filename,'r',encoding='utf-8') as rfile:
                students=rfile.readlines()#将文件当中的所有学生信息读取到列表对象当中去
                for item in  students:#从学生列表当中来实现对所有的学生信息进行遍历操作
                    student_list.append(dict(eval(item)))
                if student_list:
                    show_student(student_list)
        else:
            print("在指定的路径下文件对象不存在")
    if __name__ == '__main__':
        main()

    程序输出:

    =============学生信息管理系统================

    ----------------功能菜单--------------------

             1.录入学生信息

             2.查找学生信息

             3.删除学生信息

             4.修改学生信息

             5.排序

             6.统计学生总人数

             7.显示所有学生信息

             0.退出系统

    ===========================================

    请进行选择

    1

    请输入学生ID:1008

    请输入姓名:小龙女

    请输入英语成绩:99

    请输入python成绩:88

    请输入java成绩:77

    是否继续进行数据的添加:y/nn

    学生信息数据录入完毕

    =============学生信息管理系统================

    ----------------功能菜单--------------------

             1.录入学生信息

             2.查找学生信息

             3.删除学生信息

             4.修改学生信息

             5.排序

             6.统计学生总人数

             7.显示所有学生信息

             0.退出系统

    ===========================================

    请进行选择

    2

    按照id查找输入1,按姓名查找输入2

    2

    请输入姓名:小龙女

      ID               姓名               英语成绩           Python成绩           java成绩            总成绩           

     1008             小龙女                99               88                77              264           

    是否要继续进行学生信息的查询操作?y/n

    n

    =============学生信息管理系统================

    ----------------功能菜单--------------------

             1.录入学生信息

             2.查找学生信息

             3.删除学生信息

             4.修改学生信息

             5.排序

             6.统计学生总人数

             7.显示所有学生信息

             0.退出系统

    ===========================================

    请进行选择

    3

    请输入所要删除的学生对象的id值:1008

    id为1008的学生信息已经被删除

      ID               姓名               英语成绩           Python成绩           java成绩            总成绩           

     1001             清之羽                88               88                88              264           

     1002             老白                99               99                99              297           

     1004              无心                34               56                90              180           

    是否继续对学生对象信息进行重新删除?y/nn

    =============学生信息管理系统================

    ----------------功能菜单--------------------

             1.录入学生信息

             2.查找学生信息

             3.删除学生信息

             4.修改学生信息

             5.排序

             6.统计学生总人数

             7.显示所有学生信息

             0.退出系统

    ===========================================

    请进行选择

    5

      ID               姓名               英语成绩           Python成绩           java成绩            总成绩           

     1001             清之羽                88               88                88              264           

     1002             老白                99               99                99              297           

     1004              无心                34               56                90              180           

    请选择列表的排序方式:0为升序、1为降序

    1

    请选择排序的方式:1.按英语成绩排序.2.按python成绩排序.3.按java成绩排序.0.按照总成绩排序.

    3

    调用show_student方法

     

      ID               姓名               英语成绩           Python成绩           java成绩            总成绩           

     1002             老白                99               99                99              297           

     1004              无心                34               56                90              180           

     1001             清之羽                88               88                88              264           

    是否继续执行排序操作?y/n

    n

    =============学生信息管理系统================

     

    ----------------功能菜单--------------------

             1.录入学生信息

             2.查找学生信息

             3.删除学生信息

             4.修改学生信息

             5.排序

             6.统计学生总人数

             7.显示所有学生信息

     

             0.退出系统

    ===========================================

     

     

     

     

    请进行选择

    6

    一共有3名学生

     

    =============学生信息管理系统================

    ----------------功能菜单--------------------

             1.录入学生信息

             2.查找学生信息

             3.删除学生信息

             4.修改学生信息

             5.排序

             6.统计学生总人数

     

     

     

     

             7.显示所有学生信息

             0.退出系统

    ===========================================

    请进行选择

    7

     

     

     

      ID               姓名               英语成绩           Python成绩           java成绩            总成绩           

     1001             清之羽                88               88                88              264           

     

     

     1002             老白                99               99                99              297           

     1004              无心                34               56                90              180           

     

     

    =============学生信息管理系统================

    ----------------功能菜单--------------------

             1.录入学生信息

             2.查找学生信息

             3.删除学生信息

             4.修改学生信息

             5.排序

             6.统计学生总人数

             7.显示所有学生信息

             0.退出系统

    ===========================================

    请进行选择

    0

    您确定要退出系统吗?y/n

    y

    谢谢您的使用

     

    展开全文
  • 学生管理系统系统需求1.实现可以添加新的学员2.修改单个学员的各项信息3.将某个学员的所有信息全部删除4.查看单个学员的信息5.将所有学员的信息罗列出来6.计算考试成绩的平均值7.计算考试的及格率(大于60分)8.每次...
  • python编写的基于标签的文件管理器(当前为CLI) 用python--2.7编码 如何使用: 配置: 步骤1:python prepare_commands.py 第2步:python generate_tag_vs_files.py 第三步:python main.py 命令: tagfs#...
  • python3.0名片管理系统

    2018-10-08 18:09:29
    利用python语言编写的名片管理系统 包含添加名片信息 删除,注册等 包含exe可执行文件
  • 利用Python编程语言编写一个学生信息管理系统,每个学生应该包含如下信息:学号、姓名、性别、年龄、班级以及班级排名等。可以任意添加学生,删除学生,编辑学生信息,根据学号或年龄对学生信息进行排序,并且具有...
  • 声明 ...python的基础知识 函数,文件的相关知识 完整代码,有注解 # 导入os模块 import os # 将文件名为student.txt的文件命名为filename便于调用 filename = 'student.txt' # 主函数 def main():
  • pyznap是一个ZFS快照管理工具。 它会自动获取和删除快照,并可以将它们发送到不同的备份位置。 您可以在pyznap.conf文件中为给定的文件系统指定策略,然后使用cron让它每小时运行一次。 pyznap包含python的zfs绑定
  • 在linux操作系统编写shell脚本时, 主要涉及到执行系统命令, 目录和文件操作. 那么在python中怎么办呢, 这主要是几个模块的使用: os, os.path, shutil和sys... os模块包含了大部分的linux命令, 简单举例如下:in : ...
  • 首先准备两个Python文件,一个用于搭建框架,一个用于封装函数,进行调用。 因为Python是门解释性编程语言,所以咱们的代码顺序也是从上往下进行讲解。第一个的py文件是框架。第二个是函数。 首先从第一行开始。...
  • 该患者信息系统基于Tkinter,它是Python编程语言和SQLite提供的图形用户界面,而SQLite是C编程库中包含的关系数据库管理系统。 它提供了一个GUI,用户可以在其中输入患者的详细信息,该详细信息将作为数据库中的记录...
  • Python:学生管理系统

    2021-04-16 16:06:36
    使用python语言编写的学生管理系统,主要功能有登录系统、添加学生信息、查询学生信息、删除学生信息、修改学生信息、显示所有学生信息 待改进 用户注册或登录时,密码以*显示 主程序 # coding=utf8 # 从我们写好的...
  • 添加对其他文件或导出方法的支持就像编写一些python代码一样简单,可由具有一定编程知识的最终用户完成。 目前仅支持刺客信条Unity,但该程序旨在使添加其他游戏几乎与为该格式添加阅读器一样容易。 少量代码基于...
  • 任务3 学生基本信息的管理 已知学生的信息包括:学号,姓名,性别,出生年月,地址,电话,E-mail等。程序至少能实现以下功能: (1). 学生信息录入:添加学生信息到指定文件中 (6). 学生信息浏览:文件中学生的...
  • 总共编写两个python文件。一个主文件(cards_main.py),构建出实现框架;还有一个具体实现的工具文件(cards_tool.py).在主文件中调用工具文件。 import card_tools while True: card_tools.sh...
  • python编写一个简易图书搜索系统

    千次阅读 2019-09-06 12:19:01
    自从买了阅读器以后屯了好多书,为了...1.面对对象编程——用Python写一个图书管理系统https://blog.csdn.net/meltsnow/article/details/89217834 2.Python实现简易的图书借阅管理系统https://blog.csdn.net/Mr_fe...
  • Python—名片管理系统

    2019-09-09 21:27:21
    系统需求 程序启动,显示系统欢迎界面,并显示功能菜单 用户用数字选择不同的功能 根据功能选择,执行不同的功能 ...准备文件**,确定文件名,保证能够 在需要的位置 编写代码 编写 主运...
  • 许多Linux发行版都使用来管理系统的服务(或守护程序),例如在系统启动时以正确的顺序自动启动某些服务。 事实证明,用Python编写systemd服务很容易,但是systemd的复杂性一开始可能令人生畏。 本教程旨在帮助您...
  • memcached作为缓存文件服务.../etc/init.d/memcached 是属于系统shell编写管理脚本,下面这个脚本是python脚本编写出来的memcached管理脚本,和shell编写的脚本实现的效果一样。#!/usr/bin/python importsys impo...
  • 通过《Python UNIX和Linux系统管理指南》,你可以发现Python在如下几个方面的作用:, 读取文本文件并提取信息。, 使用多线程和fork选项。, 使用网络设备从一个进程获取另一个进程的信息。, 创建可点击的、易于交互的...
  • 想了半天,决定写一个不涉及数据库的控制台小程序——员工管理系统。 1、编写Python小程序 1.1、数据存放 因为我这次的小程序不涉及数据库,存放数据只能交给变量。(可惜就是每次新开程序数据都会丢失。)毕竟只是...
  • python名片管理系统V2

    2018-06-09 17:23:00
    # 1、要求:编写一个名片管理系统,功能如下: # 用户输入相对应的指令,实现对名片进行增、删、改、查的功能 # 2、分析 # 首先要定义python文件,一个是对程序进行操作的python文件(入口程序),另一个是作为...
  • Python系统管理

    2019-10-03 03:43:22
    系统管理四个模块:os os.path glob fnmatchos:包含大部分linux管理命令os.path:操作系统目录和文件操作glob:linux下的通配符fnmatch:文件名匹配 os模块包含普遍的操作系统功能,如果希望程序能够与平台无关的话...
  • 使用pycharm编写学生信息管理系统,实现学生信息的插入、删除、修改、查询、统计所有学生信息、排序。包括.py文件和打包成的.exe
  • python编写名片管理系统 项目介绍:使用python语言编写一个名片管理系统。该项目能够实现的功能包括新增名片、显示名片和查询搜索名片,对名片修改和删除操作。系统包括main.py和tools.py两个文件,main.py文件是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 549
精华内容 219
热门标签
关键字:

python编写文件管理系统

python 订阅