当前位置:首页>python>从电价表到趋势图:电力新人也能跑通的Python入门案例

从电价表到趋势图:电力新人也能跑通的Python入门案例

  • 2026-07-03 08:11:20
从电价表到趋势图:电力新人也能跑通的Python入门案例

很多零基础读者一听到 Python,就会有一种压力:

是不是要先学很多语法?

是不是要背各种函数?

是不是要买一本厚厚的 Python 教材?

是不是要学完爬虫、算法、数据库、机器学习,才能开始分析电力数据?

答案是:

不用。

至少在《Python电力交易》这个系列里,我们不走“先学完 Python,再学业务”的路线。

我们走的是:

用到什么,学什么。学一点,马上放到电力数据场景里用。

因为你的目标不是参加编程考试。

你的目标是解决电力交易相关的数据问题。

比如:

读取一张电价表。

筛选高价时段。

计算平均电价。

找出最高电价。

画出电价趋势图。

把一份 Excel 结果导出来。

这些任务并不需要你一开始掌握特别复杂的编程能力。

你只需要先学会几个核心工具。

这就是本章标题里的意思:

够用就好,不做无用功。

如果你是零基础读者,这一章不用追求一次性理解所有 Python 语法。

本章只要求你完成三件事:

1.看懂变量、条件判断和循环的基本作用;

2.用 Pandas 读取一份电价数据;

3.用 Matplotlib 画出第一张电价趋势图。

文末我准备了第3章配套资料包,包括完整代码、示例电价数据、运行说明、Python基础语法速查表和电价分析模板说明。

建议先收藏本文,再跟着资料包跑一遍。


一、Python 在电力交易里到底干什么?

Python 在电力交易数据分析中的作用,可以先理解为三个字:

帮你算。

再多说一点,就是:

帮你批量、稳定、可复用地处理电力数据。

比如你手里有一张电价表。

Excel 当然也能打开。

但如果你要反复做这些事情:

每天读取一次电价数据;

每月统计一次平均电价;

每次找出高价时段;

每次把结果画成趋势图;

每次输出一份表格;

那么 Python 就会很有价值。

因为 Python 可以把这些步骤写成代码。

只要数据格式差不多,后面就能重复运行。

这就是为什么我们要学 Python。

不是为了炫技。

不是为了写复杂模型。

而是为了把重复的电力数据工作自动化。


二、Python核心基础:先掌握这4个概念

这一节我们只讲四个基础概念:

变量。

数据类型。

条件判断。

循环。

这四个概念,足够支撑你理解很多入门代码。


1. 变量:给数据起一个名字

变量可以理解为:

用一个名字保存一个数据。

比如我们要保存一个电价:

price_yuan_per_kwh = 0.75

这行代码的意思是:

把 0.75 这个数,保存到 price_yuan_per_kwh 这个名字里。

在电力交易场景里,变量可以这样用:

price_yuan_per_kwh = 0.75# 电价,单位:元/kWhenergy_kwh = 100# 电量,单位:kWhcost_yuan = price_yuan_per_kwh * energy_kwh

这里:

price_yuan_per_kwh 表示电价,单位是元/kWh。

energy_kwh 表示电量,单位是 kWh。

cost_yuan 表示电费,单位是元。

最基础的计算逻辑就是:

电费 = 电价 × 电量

对应到 Python 里就是:

cost_yuan = price_yuan_per_kwh * energy_kwh

这就是变量的作用。

它让数据有了名字,也让计算过程更容易看懂。


2. 数据类型:不同数据有不同样子

Python 里的数据有不同类型。

你现在先记住三种就够了。

第一种是数字。

比如:

price_yuan_per_kwh = 0.75load_kw = 500

第二种是文本。

比如:

time = "08:00"province = "广东"

第三种是列表。

比如:

prices = [0.320.680.920.75]

列表可以理解为:

一组数据排成一队。

在电力数据里,列表很常见。

比如一天中几个时段的电价:

prices = [0.320.680.920.75]

一天中几个时段的负荷:

loads = [320520760430]

后面我们会用 Pandas 处理更正式的表格数据。

但在理解代码时,你先知道这些基础类型就够了。


3. 条件判断:如果电价高,就提醒我

条件判断可以理解为:

如果满足某个条件,就执行某个动作。

比如:

price_yuan_per_kwh = 0.92if price_yuan_per_kwh > 0.8:    print("这是一个较高电价时段")

这段代码的意思是:

如果电价大于 0.8 元/kWh,就打印提醒。

在电力交易场景中,条件判断很常见。

比如:

如果电价高于某个阈值,就标记为高价时段。

如果负荷超过某个数值,就标记为高负荷时段。

如果峰谷价差大于某个水平,就进一步分析储能可能性。

当然,本书前期不会直接做交易决策。

我们只是先学习如何用代码识别数据特征。


4. 循环:对很多条数据重复做同一件事

循环可以理解为:

对一组数据,一条一条处理。

比如我们有一组电价:

prices = [0.320.680.920.75]

现在想把每个电价都打印出来:

for price in prices:    print(price)

这段代码的意思是:

从 prices 里面一个一个取出电价,并打印出来。

如果我们想找出高价时段,可以这样写:

for price in prices:if price > 0.8:        print("发现高价:", price)

这里就同时用到了循环和条件判断。

在电力数据分析里,很多工作本质上都是循环:

对每小时电价进行计算。

对每天负荷进行统计。

对每个用户计算电费。

对每个月数据生成报表。

所以循环非常重要。

但你不用怕。

后面我们会用 Pandas 处理大部分表格计算,很多时候不需要自己写复杂循环。


三、核心工具库入门:Pandas

前面讲的变量、条件、循环,是 Python 的基础能力。

但真正处理电力数据时,我们通常会遇到表格。

比如:

电价表、负荷表、用户清单、电费明细、现货价格表、中长期交易结果表。

这些表格可能是 CSV,也可能是 Excel。

这时候就需要 Pandas。

你可以先把 Pandas 理解为:

Python 里的表格处理工具。

它能做很多 Excel 能做的事情,比如:

读取表格、查看前几行、筛选数据、计算平均值、找最大值和最小值、新增一列、导出结果。

本章我们只用它做三件事:

1.读取电价数据

2.打印数据

3.筛选高价时段。


四、核心工具库入门:Matplotlib

如果说 Pandas 负责处理表格,那么 Matplotlib 就负责画图。

你可以先把 Matplotlib 理解为:

Python 里的基础画图工具。

在电力交易数据分析中,画图非常重要。

因为电力数据通常有明显的时间特征。

比如:

一天 24 小时电价变化。

一天 96 点负荷曲线。

一个月现货电价波动。

工作日和周末用电差异。

峰时、平时、谷时电价对比。

如果只看数字,很容易看不出变化。

但画成图之后,很多问题会直观很多。

本章我们先画一张最简单的电价趋势图。

只要能看到电价在不同时段的变化,就已经完成了第一步。


五、本章实操:读取电价数据,绘制简单趋势图

接下来进入实操。

本章案例要做的事情很简单:

  1. 准备一份教学用电价数据;
  2. 用 Python 读取这份数据;
  3. 打印完整电价表;
  4. 筛选出高价时段;
  5. 画出电价趋势图。

注意:

本章数据是教学用模拟数据,不代表任何省份真实电价,也不代表现货价格、零售价格或结算价格。

示例数据说明

我们准备一份名为price_data.csv的 CSV 文件。

内容如下:

time,price_yuan_per_kwh00:00,0.3204:00,0.3508:00,0.6810:00,0.8212:00,0.9514:00,0.9216:00,0.7818:00,0.8820:00,0.7522:00,0.45

这份数据表示某个教学场景中,一天内不同时段的电价。

时间
电价/元每kWh
00:00
0.32
04:00
0.35
08:00
0.68
10:00
0.82
12:00
0.95
14:00
0.92
16:00
0.78
18:00
0.88
20:00
0.75
22:00
0.45

为了降低新手出错概率,本章代码会自动创建这份 CSV 文件。

也就是说,你只需要复制代码运行即可。

如果文件不存在,代码会自动生成示例数据。

如果文件已经存在,代码会直接读取已有文件。

建议把代码文件放在一个简单的英文路径中,例如:

D:\python_power_trade\chapter03

这样可以减少中文路径、空格路径、压缩包目录、微信下载目录带来的排查困难。

Python完整代码

本章需要用到两个库:pandas 和 matplotlib

如果你还没有安装,可以在命令行输入:

python -m pip install pandas matplotlib

如果 Windows 上 python 命令不生效,可以尝试:

py -m pip install pandas matplotlib

如果你使用国内网络环境,下载比较慢,可以使用:

python -m pip install pandas matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple

或者:

py -m pip install pandas matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple

请新建一个 Python 文件:

chapter03_price_trend.py

下面这段代码不需要你一行一行全部背下来。

第3章的目标只有一个:

用 Python 读取电价数据,并画出一张最简单的电价趋势图。

如果你不想手动整理文件,可以在文末私信关键词

电力Python03

领取本章资料包,里面已经准备好代码、示例数据和运行说明。

然后复制下面完整代码:

# -*- coding: utf-8 -*-# 第3章实操:读取电价数据,绘制简单电价趋势图# 说明:# 1. 本案例使用教学用模拟数据,不代表任何省份真实电价或交易规则# 2. 本案例仅用于 Python 数据分析学习,不构成交易建议或经营决策依据from pathlib import Pathimport pandas as pdimport matplotlib.pyplot as pltprint("=== Python电力交易第3章:读取电价数据并绘制趋势图 ===")# 1. 找到当前 Python 文件所在的文件夹current_folder = Path(__file__).resolve().parent# 2. 设置 CSV 文件路径和图片保存路径csv_file = current_folder / "price_data.csv"chart_file = current_folder / "price_trend.png"# 3. 如果 CSV 文件不存在,就自动创建一份教学用模拟数据ifnot csv_file.exists():    sample_data = {"time": ["00:00""04:00""08:00""10:00""12:00","14:00""16:00""18:00""20:00""22:00"        ],"price_yuan_per_kwh": [0.320.350.680.820.95,0.920.780.880.750.45        ],    }    sample_df = pd.DataFrame(sample_data)    sample_df.to_csv(csv_file, index=False, encoding="utf-8-sig")    print(f"\n未发现 {csv_file.name},已自动创建教学用模拟数据文件。")else:    print(f"\n已发现 {csv_file.name},将直接读取该文件。")# 4. 读取电价数据df = pd.read_csv(csv_file)# 5. 检查必要字段是否存在required_columns = ["time""price_yuan_per_kwh"]for column in required_columns:if column notin df.columns:raise ValueError(f"CSV 文件中缺少必要字段:{column}")# 6. 确保电价列是数字,方便后面统计和绘图df["price_yuan_per_kwh"] = pd.to_numeric(df["price_yuan_per_kwh"])# 7. 打印完整数据print("\n原始电价数据:")print(df)# 8. 计算基础统计指标max_price = df["price_yuan_per_kwh"].max()min_price = df["price_yuan_per_kwh"].min()avg_price = df["price_yuan_per_kwh"].mean()print("\n电价统计结果:")print(f"最高电价:{max_price:.2f} 元/kWh")print(f"最低电价:{min_price:.2f} 元/kWh")print(f"平均电价:{avg_price:.2f} 元/kWh")# 9. 筛选高价时段# 这里设置一个教学用阈值:电价大于 0.80 元/kWh,就标记为高价时段high_price_df = df[df["price_yuan_per_kwh"] > 0.80]print("\n高价时段:")print(high_price_df)# 10. 绘制电价趋势图plt.figure(figsize=(95))plt.plot(    df["time"],    df["price_yuan_per_kwh"],    marker="o")plt.title("Electricity Price Trend")plt.xlabel("Time")plt.ylabel("Price (Yuan/kWh)")plt.grid(True)plt.tight_layout()# 11. 保存图片plt.savefig(chart_file, dpi=150)print(f"\n电价趋势图已保存为:{chart_file.name}")# 12. 显示图片plt.show()print("\n恭喜你,已经成功读取电价数据,并绘制出第一张电价趋势图!")

代码解释

1. 文件编码声明

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

这一行表示代码文件使用 UTF-8 编码。

现在大多数新版编辑器默认支持 UTF-8,所以这行通常不是必须的。

但对零基础读者来说,保留这一行可以减少少数电脑上中文乱码的概率。


2. 导入工具库

from pathlib import Pathimport pandas as pdimport matplotlib.pyplot as plt

这里导入了三个工具。

pathlib 是 Python 自带的路径处理工具,用来帮助程序找到文件位置。

pandas 用来读取和处理表格数据。

matplotlib.pyplot 用来画图。

其中:

import pandas as pd

意思是把 pandas 简写成 pd

这是数据分析中非常常见的写法。

import matplotlib.pyplot as plt

意思是把画图工具简写成 plt

你现在不用背,只要先照着写。


3. 找到当前代码文件所在文件夹

current_folder = Path(__file__).resolve().parent

这行代码的意思是:

找到当前这个 Python 文件所在的文件夹。

为什么要这样写?

因为很多新手会遇到一个问题:

明明 CSV 文件和 Python 文件放在同一个文件夹里,但运行时还是提示找不到文件。

原因通常是:

Python 当前运行位置,和代码文件实际所在位置不一致。

使用这一行代码后,程序会从“当前 Python 文件所在文件夹”去生成和读取 CSV 文件,路径更稳定。


4. 设置 CSV 文件和图片文件路径

csv_file = current_folder / "price_data.csv"chart_file = current_folder / "price_trend.png"

这两行代码表示:

price_data.csv 会生成或读取在当前 Python 文件所在文件夹中。

price_trend.png 也会保存到当前 Python 文件所在文件夹中。

也就是说,代码运行后,你可以在同一个文件夹里看到:

chapter03_price_trend.pyprice_data.csvprice_trend.png

这样对新手更友好,不容易找不到文件。


5. 自动创建模拟数据

ifnot csv_file.exists():

这行代码的意思是:

如果当前文件夹里没有 price_data.csv,就执行下面的代码,自动创建一份教学用模拟数据。

下面这段就是创建教学用模拟数据:

sample_data = {"time": ["00:00""04:00""08:00""10:00""12:00","14:00""16:00""18:00""20:00""22:00"    ],"price_yuan_per_kwh": [0.320.350.680.820.95,0.920.780.880.750.45    ],}

你可以把它理解成一张小表格。

有两列:

time:时间。

price_yuan_per_kwh:电价,单位是元/kWh。

然后这两行代码把它变成表格并保存为 CSV 文件:

sample_df = pd.DataFrame(sample_data)sample_df.to_csv(csv_file, index=False, encoding="utf-8-sig")

其中:

pd.DataFrame() 表示创建一张表。

to_csv() 表示把表保存成 CSV 文件。

index=False 表示不要把行号保存进去。

encoding="utf-8-sig" 是为了让部分电脑用 Excel 打开 CSV 时,不容易出现中文乱码。


6. 读取电价数据

df = pd.read_csv(csv_file)

这行代码的意思是:

用 Pandas 读取 price_data.csv 文件,并把它保存到 df 里。

df 是 DataFrame 的缩写。

可以先理解为:Python 里的表格。


7. 检查必要字段是否存在

required_columns = ["time""price_yuan_per_kwh"]for column in required_columns:if column notin df.columns:raise ValueError(f"CSV 文件中缺少必要字段:{column}")

这段代码的意思是:

检查 CSV 文件里是否有 time 和 price_yuan_per_kwh 这两列。

如果缺少某一列,程序会主动报错,并提示缺少哪个字段。

这样比直接出现 KeyError 更适合新手理解。

比如你把表头写成:

time,price

程序就会提示缺少:

price_yuan_per_kwh

本章为了降低难度,建议先完全使用示例表头:

time,price_yuan_per_kwh


8. 确保电价列是数字

df["price_yuan_per_kwh"] = pd.to_numeric(df["price_yuan_per_kwh"])

这行代码的意思是:

把 price_yuan_per_kwh 这一列转换成数字。

为什么要转换?

因为 CSV 文件里的内容有时看起来是数字,但读入 Python 后可能被当成文本。

如果电价列不是数字,后面计算最高、最低、平均电价时,就可能出错。

所以在正式统计前,先确认它是数字,是一个比较好的习惯。


9. 打印原始电价数据

print(df)

这行代码会把表格打印出来。

你会看到类似结果:

    time  price_yuan_per_kwh0  00:00                0.321  04:00                0.352  08:00                0.683  10:00                0.824  12:00                0.955  14:00                0.926  16:00                0.787  18:00                0.888  20:00                0.759  22:00                0.45

左边的 0、1、2、3 是行号。

真正的数据是 time 和 price_yuan_per_kwh 两列。


10. 计算最高、最低、平均电价

max_price = df["price_yuan_per_kwh"].max()min_price = df["price_yuan_per_kwh"].min()avg_price = df["price_yuan_per_kwh"].mean()

这三行代码分别表示:

从 price_yuan_per_kwh 这一列里找最高电价。

从 price_yuan_per_kwh 这一列里找最低电价。

计算 price_yuan_per_kwh 这一列的平均值。

这就是 Pandas 非常方便的地方。

你不用自己一条一条手工算。

只要指定列名,就可以直接统计。


11. 筛选高价时段

high_price_df = df[df["price_yuan_per_kwh"] > 0.80]

这行代码的意思是:

从整张表里筛选出 price_yuan_per_kwh 大于 0.80 的行。

在本案例中,电价大于 0.80 元/kWh 的时段会被筛选出来。

注意:

这里的 0.80 只是教学用阈值。

真实业务中,什么算“高价”,要结合具体省份、具体电价类型、具体用户场景、历史价格水平来判断,不能简单套用。


12. 绘制电价趋势图

plt.plot(    df["time"],    df["price_yuan_per_kwh"],    marker="o")

这段代码表示:

横轴使用 time

纵轴使用 price_yuan_per_kwh

marker="o" 表示每个数据点用圆点标出来。

下面几行代码是给图表加标题和坐标轴名称:

plt.title("Electricity Price Trend")plt.xlabel("Time")plt.ylabel("Price (Yuan/kWh)")

这里标题使用英文,是为了尽量避免部分电脑出现 Matplotlib 中文字体乱码。

后面我们会专门讲如何设置中文字体。


13. 保存图片

plt.savefig(chart_file, dpi=150)

这行代码会把图表保存为:

price_trend.png

也就是说,代码运行结束后,你的代码文件夹里会多出一张图片。

这张图片就是本章的电价趋势图。

运行结果说明

运行代码后,你大概率会看到类似输出:

=== Python电力交易第3章:读取电价数据并绘制趋势图 ===未发现 price_data.csv,已自动创建教学用模拟数据文件。原始电价数据:    time  price_yuan_per_kwh0  00:00                0.321  04:00                0.352  08:00                0.683  10:00                0.824  12:00                0.955  14:00                0.926  16:00                0.787  18:00                0.888  20:00                0.759  22:00                0.45电价统计结果:最高电价:0.95 元/kWh最低电价:0.32 元/kWh平均电价:0.69 元/kWh高价时段:    time  price_yuan_per_kwh3  10:00                0.824  12:00                0.955  14:00                0.927  18:00                0.88电价趋势图已保存为:price_trend.png恭喜你,已经成功读取电价数据,并绘制出第一张电价趋势图!

同时,你会看到一个图表窗口弹出。

代码所在文件夹中,也会出现两个文件:

price_data.csvprice_trend.png

这说明你已经完成了本章的目标:

读取电价数据。

打印电价表。

统计最高、最低、平均电价。

筛选高价时段。

画出电价趋势图。

对于零基础读者来说,这已经是非常关键的一步。

因为后面所有复杂分析,都是从这些基础动作扩展出来的。

本章小练习

练习1:修改高价判断阈值

把代码中的:

high_price_df = df[df["price_yuan_per_kwh"] > 0.80]

改成:

high_price_df = df[df["price_yuan_per_kwh"] > 0.70]

重新运行代码。

观察高价时段数量是否变多。

思考:

为什么阈值降低后,高价时段会变多?


练习2:新增两个电价时段

打开自动生成的 price_data.csv,在最后新增两行:

23:00,0.4023:30,0.36

重新运行代码。

观察:

最低电价有没有变化?

平均电价有没有变化?

图表横轴有没有增加新的时点?

注意:

这里不建议写 24:00

因为在本章里时间只是文本,写 24:00 不一定会立刻报错;但后续如果用 Python 做正式时间处理,24:00 很可能带来解析问题。


练习3:找出低价时段

仿照高价时段筛选代码,新增一段代码,筛选电价低于 0.50 的时段。

提示:

可以参考:

low_price_df = df[df["price_yuan_per_kwh"] < 0.50]print("\n低价时段:")print(low_price_df)

练习4:思考一个业务问题

如果你看到某一天电价在 12:00 和 14:00 明显偏高,你会进一步想查哪些信息?

可以从这些角度思考:

这是真实电价,还是教学模拟数据?

这是分时电价、零售电价,还是现货价格?

高价是否和系统负荷高有关?

高价是否和天气、生产活动、新能源出力有关?

用户是否刚好在高价时段用电较多?

如果是储能场景,是否存在低价充电、高价放电的分析价值?


如果你已经跑通本章代码,并且在文件夹里看到了:

price_data.csv

price_trend.png

欢迎在评论区回复:

趋势图已跑通

如果你遇到报错,也可以直接留言:

ModuleNotFoundError

ValueError

FileNotFoundError

IndentationError

后面我会把大家遇到的问题整理成一篇:

《Python 电力交易新手常见报错手册》

如果你想直接领取本章配套资料,可以私信公众号关键词:

电力Python03

领取《Python电力交易》第3章入门资料包,包括:

  1. chapter03_price_trend.py
  2. price_data.csv 示例电价数据
  3. price_trend.png 示例图
  4. 第3章新手运行说明
  5. Python 电力交易基础语法速查表
  6. 电价数据分析入门模板说明

建议使用顺序:

先看运行说明 → 跑通完整代码 → 查看生成的趋势图 → 对照语法速查表理解代码 → 回到评论区回复“趋势图已跑通”。

也欢迎你在评论区回答:

你最想优先学习哪一种图表?

A. 电价趋势图

B. 负荷曲线图

C. 分时电价对比图

D. 月度电费柱状图

E. 现货价格波动图

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-03 08:11:50 HTTP/2.0 GET : https://f.mffb.com.cn/a/497274.html
  2. 运行时间 : 0.087613s [ 吞吐率:11.41req/s ] 内存消耗:5,112.62kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=d7340f7a64cfbbb59bbc494613ceb48a
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000560s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000834s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000285s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000283s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000490s ]
  6. SELECT * FROM `set` [ RunTime:0.000197s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000572s ]
  8. SELECT * FROM `article` WHERE `id` = 497274 LIMIT 1 [ RunTime:0.000570s ]
  9. UPDATE `article` SET `lasttime` = 1783037511 WHERE `id` = 497274 [ RunTime:0.002488s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000244s ]
  11. SELECT * FROM `article` WHERE `id` < 497274 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000790s ]
  12. SELECT * FROM `article` WHERE `id` > 497274 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000390s ]
  13. SELECT * FROM `article` WHERE `id` < 497274 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002250s ]
  14. SELECT * FROM `article` WHERE `id` < 497274 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001343s ]
  15. SELECT * FROM `article` WHERE `id` < 497274 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001290s ]
0.089169s