python 实战项目系列之 三

python 实战案例三:  学生管理系统设计与实现(完善中。。。。)

# -*- coding:utf-8 -*-


import sys
import pandas as pd
from sqlalchemy import create_engine
import MySQLdb

reload(sys)
sys.setdefaultencoding('utf-8')


'''
设计开发一套学生信息管理系统,具备以下功能:
1、权限管理:学生,管理员
2、注册,用户名,密码登陆
3、学生具备登陆,查询个人信息,成绩的权限
4、新用户注册,将注册信息持久化到mysql 学生信息表
5、老用户(学生信息表里面有记录的学生)

'''

'''***打印功能列表***'''
def showinfo():
    print "学生管理系统 V1.0"
    print "\t1:登陆系统"
    print "\t2:注册账号"
    print "\t3:兴趣选课"
    print "\t4:成绩查询"
    print "\t5:爱师选评"
    print "\t0:退出系统"


'''***功能选择***'''
def getinfo():
    choince = input("请按提示选择:")
    return int(choince)


'''***登陆,注册***'''
def User_Login():
    sno = input("请输入你的学号:")
    passwd = input("请输入密码:")

    # 判断是否为新用户
    for i in range(0, 3, 1):
        i = i + 1
        if str(sno) == "123456" and str(passwd) == '123':
            print "欢迎进入学生管理系统!"
        else:
            print "您尚未开通权限,请注册!"
            new_sno = input("\n\t请输入账号(学号):")
            new_passwd = input("\t为你账号设置密码:")
            again_new_passwd = input("\t请再次输入密码:")
            if str(new_passwd) == str(again_new_passwd):
                print "注册成功!"
                showinfo()

            else:
                print "两次密码不一致,请重新输入"
                continue


'''***登陆mysql***'''
def login_mysql():
    # 创建连接
    conn = MySQLdb.Connect(host='127.0.0.1'
                           , user='root'
                           , passwd='1234563'
                           , db='student'
                           , port=3306
                           , charset='utf8'
                           )

    # 创建查询入口
    cur = conn.cursor(MySQLdb.cursors.DictCursor)

    # 执行sql
    cur.execute()

    # 获取数据
    processResult = cur.fetchall()

    # 关闭 cur
    cur.close()

    # 关闭 conn
    conn.close()

def score():
    sql_sc = "select * from student_score"
    rest = login_mysql().cur().execute(sql_sc)
    return rest


def student_info():
    sql_info = "select * from student_info"
    info = login_mysql().cur().execute(sql_info)
    return info



def to_mysql(dataframe):
    connect = create_engine('mysql+mysqldb://root:[email protected]:3306/student?charset=utf8')
    pd.io.sql.to_sql(dataframe
                     , "student_info"
                     , con=connect
                     , schema="student"
                     , if_exists="append"
                     )

def quitInfo():
    print("退出系统!")



if __name__ == '__main__':
    while True:
        showinfo()
        key = getinfo()
        if key == 0:
            quitInfo()
            break
        elif key == 1:
            getinfo()
        elif key == 2:
            User_Login()
        elif key == 3:
            print "成绩查询"
        elif key == 4:
            score()
        else:
            print "请重新输入!!!"

猜你喜欢

转载自www.cnblogs.com/RHadoop-Hive/p/9341901.html
今日推荐