• Python有关模块学习记录


    pandas numpy模块

    首先安装搭建好jupyter notebook,运行成功后的截图如下:

    安装使用步骤(PS:确定Python安装路径和安装路径里面Scripts文件夹路径已经配置到环境变量中去,即pip所在路径已经配置到环境变量中去):

    //以下说明是在Windows环境下
    //安装
    pip install jupyter notebook
    
    //不出意外即可安装成功
    //然后在Scripts文件夹里面即可看到安装后的jupyter notebook相关配置文件
    
    在CMD中输入jupyter notebook即可在默认浏览器中打开jupyter notebook网页编辑页面

    推荐资料:

    Jupyter Notebook简洁教程

    Pandas 使用教程 1

    Pandas 使用教程 2

    Pandas 使用教程 3

    Pandas 使用教程 4

    Pandas 使用教程 5


    2 peewee模块

    使用peewee连接mysql数据库,进行增删查改操作语句示例。原文链接

    增
    单条增加
    
    方法1
    
    StudentsInfo.create(student_name='amos', student_no=880)
    
    方法2
    
    StudentsInfo.insert(student_name='lucy', student_no=881).execute()
    
     
    
    等同于insert into student_info (student_name, student_no)  values ('lee',882)
    
    多条增加
    
    方法1
    
    data_source = [
    
        {'student_name': 'lance', 'student_no': 883},
    
        {'student_name': 'john', 'student_no': 884},
    
        # ...
    
    ]
    
     
    
    for data_dict in data_source:
    
    StudentsInfo.create(**data_dict)
    
     
    
    方法2(这个方法会快很多)
    
    data_source = [
    
        {'student_name': 'jason', 'student_no': 886},
    
        {'student_name': 'tom', 'student_no': 887},
    
        # ...
    
    ]
    
    with database.atomic():
    
        for data_dict in data_source:
    
            StudentsInfo.create(**data_dict)
    
    方法3(最快的方法)
    
    data_source = [
    
        {'student_name': 'hom', 'student_no': 888},
    
        {'student_name': 'baby', 'student_no': 889},
    
        # ...
    
    ]
    
    with database.atomic():
    
    StudentsInfo.insert_many(data_source).execute()
    
    如果数据量太大或许你需要分开处理,比如一次处理100条:
    
    data_source = [
    
        {'student_name': 'hom', 'student_no': 888},
    
        {'student_name': 'baby', 'student_no': 889},
    
        # ...
    
    ]
    
    with database.atomic():
    
        for idx in range(0,len(data_source),100):
    
        StudentsInfo.insert_many(data_source[idx:idx+100]).execute()
    
     
    
    删
    单条删除
    
    st = StudentsInfo.get(student_name='hom')
    
    st.delete_instance()
    
    等同于DELETE from student_info where student_name = 'hom'
    
     
    
    多条删除
    
    StudentsInfo.delete().where(StudentsInfo.student_no < 883).execute()
    
    等同于DELETE from student_info where student_no < 883
    
     
    
    改
    方法1指定数据
    
    StudentsInfo.update(student_no=890).where(StudentsInfo.student_name == 'baby').execute()
    
    方法2依据原有数据自动更新
    
    StudentsInfo.update(student_no=StudentsInfo.student_no + 1).where(StudentsInfo.student_name == 'baby').execute()
    
    方法3 多字段更新
    
    StudentsInfo.update(student_no=890,student_name='lady').where(StudentsInfo.student_name == 'baby').execute()
    
     
    
    查
    1. 一般查询
    
    st1 = StudentsInfo.select()
    
    查询所有的记录并获取他们
    
    for i in st1:
    
        print i.student_no, i.student_name
    
     
    
    2. 单条查询
    
    st2 = StudentsInfo.get(StudentsInfo.student_no == 883)
    
    print st2.student_no, st2.student_name
    
     
    
    对比1和2个区别
    
    先获取他们的类型
    
    print type(st1) == > <class 'peewee.SelectQuery'>
    
    Print type(st2) == > <class 'createDB.StudentsInfo'>
    
    st1是’SelectQuery'类型需要使用for循环逐条获取,而st2本身就是一个实例的对象可以直接获取它的属性
    
     
    
    3. 查询部分字段
    
    st3 = StudentsInfo.select(StudentsInfo.student_no)
    
     
    
    4. 有条件查询
    
    st4 = StudentsInfo.select().where(StudentsInfo.student_no == 883)
    
     
    
    5. 随机查询
    
    需要先引入fn
    
    from peewee import fn
    
    st5 = StudentsInfo.select().order_by(fn.Random()).limit(2)
    
     
    
    6. 排序查询
    
    正序
    
    st6 = StudentsInfo.select().order_by(StudentsInfo.student_no.asc())
    
    反序
    
    st6 = StudentsInfo.select().order_by(StudentsInfo.student_no.desc())
    
     
    
    7. Not in组合查询
    
    简单举例,现有学生信息表student_info学生姓名student_name和学号student_no,学生成绩表score_table学号student_no和分数score
    
    st7 = StudentsInfo.select(StudentsInfo.student_no).where(StudentsInfo.student_no > 880)
    
    sc = StudentsScore.select().where(StudentsScore.student_no.not_in(st7))
    
    8. 模糊查询
    
    比如想要查询学生名字包含’ba’的学生以及学号
    
    %符号就相当于sql里的like
    
    st8 = StudentsInfo.select().where(StudentsInfo.student_name % '%ba%')
    
    for i in st8:
    
        print i.student_no,i.student_name
    
    
    
    纯手打,多谢支持。
    peewee连接mysql进行增删查改操作
  • 相关阅读:
    达梦数据库配置信息
    linux命令收集
    达梦数据库快速学习上手教程
    linux命令收集
    关于deciaml的类型转换问题
    exjs 导出excel
    Win7 系统IIS的配置方法 及相关参数设置
    为MFC添加UAC控制 (UAC Execution Level)
    asp.net 六大内置对象(1)
    .NET Framework 的垃圾回收器管理应用程序的内存分配和释放
  • 原文地址:https://www.cnblogs.com/liuzhen1995/p/8652591.html
Copyright © 2020-2023  润新知