pandas 初识(四)

Pandas 和 sqlalchemy 配合实现分页查询 Mysql 并获取总条数

@api.route(‘/show‘, methods=["POST"])
def api_show():  # 分页查询并获取总数
    offset = request.json.get(‘offset‘, 0)
    limit = request.json.get(‘limit‘, 10)
    sql = "select SQL_CALC_FOUND_ROWS * from bidata.gen_adid_cost order by id desc limit {offset},{limit}".format(
        offset=offset,
        limit=limit)
    con = db.get_engine(current_app, ‘tm_new_hfjy‘)
    with con.connect() as conn:
        df1 = pd.read_sql(sql, con=conn)
        df2 = pd.read_sql("SELECT FOUND_ROWS() as total;", con=conn)

        # df1 = df1.drop(index=[0])
        # print(df1["update_time"].head())
        # print(df1.dtypes)
        # df1["create_time"] = df1["create_time"].dt.strftime("%Y/%m/%d")

        total = df2.loc[0, "total"]
   df = df.where(df.isnull(), None)
    result = list(df1.T.to_dict().values())

    import numpy as np

    class MyNpEncoder(json.JSONEncoder):
        def default(self, obj):
            if isinstance(obj, np.integer):
                return int(obj)
            elif isinstance(obj, np.floating):
                return float(obj)
            elif isinstance(obj, np.ndarray):
                return obj.tolist()
            elif isinstance(obj, pd.datetime):
                return obj.strftime("%Y-%m-%d %H:%M:%S")
            elif isinstance(obj, date):
                return obj.strftime("%Y/%m/%d")

            else:
                return super(MyNpEncoder, self).default(obj)

    data = dict(code=RET.OK, msg="共 %s 条,本页加载 %s 条记录!" % (total, len(result)), data=result, total=total)
    return json.dumps(data, cls=MyNpEncoder)

原文地址:https://www.cnblogs.com/spaceapp/p/10792660.html

时间: 2024-10-11 13:10:55

pandas 初识(四)的相关文章

Python数据分析库pandas ------ 初识 matpoltlib:matplotliab画图怎么显示中文;设置坐标标签;主题;画子图;pandas时间数据格式转化;图例;

打开画布,传入x,y的值,可以简单的画出曲线图 1 import matplotlib.pyplot as plt 2 3 c = [ 4 0.9012051747628913, 0.9012051747628913, 0.9012051747628913, 0.9012051747628913, 5 0.9012051747628913, 0.9012051747628913, 0.9012051747628913, 0.9012051747628913, 6 0.90120517476289

pandas 初识(一)

基本内容 Series 是有一组数据(numpy的数据类型 numpy.ndarray)以及一组数据标签(即索引)组成 obj = Series([4, 7, -5, 3]) print(type(obj)) print(type(obj.values)) obj.values <class 'pandas.core.series.Series'><class 'numpy.ndarray'> array([ 4,  7, -5,  3], dtype=int64) 原文地址:ht

pandas 初识(三)

Python Pandas 空值 pandas 判断指定列是否(全部)为NaN(空值) import pandas as pd import numpy as np df = pd.DataFrame({"a": ["aa", np.NAN, np.NAN], "b": [3, np.NAN, 2]}) 判断某列是否有NaN >>> df.a.isnull().any() True 判断是否全部为 NAN >>>

小白学 Python 数据分析(9):Pandas (八)数据预处理(2)

人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):Pandas (二)数据结构 Series 小白学 Python 数据分析(4):Pandas (三)数据结构 DataFrame 小白学 Python 数据分析(5):Pandas (四)基础操作(1)查看数据 小白学 Python 数据分析(6):Pandas (五)基础操作(2)数据选择 小白学

小白学 Python 数据分析(10):Pandas (九)数据运算

人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):Pandas (二)数据结构 Series 小白学 Python 数据分析(4):Pandas (三)数据结构 DataFrame 小白学 Python 数据分析(5):Pandas (四)基础操作(1)查看数据 小白学 Python 数据分析(6):Pandas (五)基础操作(2)数据选择 小白学

小白学 Python 数据分析(11):Pandas (十)数据分组

人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):Pandas (二)数据结构 Series 小白学 Python 数据分析(4):Pandas (三)数据结构 DataFrame 小白学 Python 数据分析(5):Pandas (四)基础操作(1)查看数据 小白学 Python 数据分析(6):Pandas (五)基础操作(2)数据选择 小白学

python之基础篇(一)

防伪码:忘情公子著 一.python介绍 python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. python语法简洁明晰,特色之一是强制用空白符作为语句缩进. python具有丰富和强大的库,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起.此段引自百度百科. python有很多的模块能够实现各种功能,在编程时能够通过调用相应的模块从而减少代码量 二.编程语言介绍 在开始学习pyth

python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)

一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sys.argv) #打印相对路径,在pycharm输出结果是绝对路径,因为在pycharm中调用 print(sys.argv[2]) #可以从数据列表中取值,[2]指取第三位.        标准库存放位置:C:\Python35\Lib 第三方库存放位置C:\Python35\Lib\site-p

capwap学习笔记&mdash;&mdash;初识capwap(四)

2.5.7 CAPWAP传输机制 WTP和AC之间使用标准的UDP客户端/服务器模式来建立通讯. CAPWAP协议支持UDP和UDP-Lite [RFC3828]. ¢ 在IPv4上,CAPWAP控制和数据通道使用UDP.此时CAPWAP报文中的UDP校验和必须设置为0.AC上的CAPWAP控制报文端口为UDP众所周知端口5246,数据报文端口为UDP众所周知端口5247 ,WTP可以随意选择CAPWAP控制和数据端口. ¢ 在IPv6上,CAPWAP控制通道一般使用UDP,而数据通道可以使用U