当前位置:首页>Excel>openpyxl读取Excel——Python帮你看表格

openpyxl读取Excel——Python帮你看表格

  • 2026-08-09 11:15:40
openpyxl读取Excel——Python帮你看表格

openpyxl 读取 ExcelPython 帮你"看"表格


一、课堂故事

「同学们,今天班主任给我发了一份全班期中成绩表,让我帮她统计全班平均分和各科的最高分。我一看——50个学生,8门课,400个格子……」

我在讲台上打开一个 Excel 文件,投影到大屏幕上。密密麻麻的数字,一眼望不到头。

「如果用计算器一个一个加,这节编程课就变成数学课了。」我顿了顿,「但你们已经学了 pip 安装库,上节课还亲手装了 openpyxl。现在——是时候让它干活了。」

「老师,openpyxl 能帮我们读这个 Excel 吗?」小明举手。

「不仅能读。」我敲下第一行代码,「它就像一个戴着眼镜的小助手,帮你一行一行地看表格,比你眼睛还快。」

全班安静。屏幕上出现了 load_workbook

「你们发给我的成绩单不是 CSV——是班主任用 Excel 做的,带表头、带格式、有颜色。CSV 拿它没办法。但 openpyxl 可以。」

我敲完最后一行 print,回车。屏幕上哗啦啦刷出了全班 50 个人的名字和成绩。

「你们刚才看到的这个操作,叫『读取 Excel 文件』。今天这节课——Python 帮你『看』表格。」

二、概念解释

Excel 文件的三个层级

先理清一个概念。一个 Excel 文件里面,是三层结构

📁 成绩单.xlsx          ← 工作簿(Workbook) ├─ 📄 Sheet1(语文成绩) ← 工作表(Worksheet) ├─ 📄 Sheet2(数学成绩) ← 工作表 └─ 📄 Sheet3(总分排名) ← 工作表       │       └─ 每个工作表里面是一个个格子:          A1 → "姓名",B1 → "语文",C1 → "数学"          A2 → "张三",B2 → 85,C2 → 92          A3 → "李四",B3 → 78,C3 → 88          ...每个格子叫 单元格(Cell)

你之前在 Excel 里点来点去,就是在工作簿→工作表→单元格三层之间跳。openpyxl 也是同样的思维模型。

核心概念

概念
英文
含义
类比
工作簿
Workbook
整个 .xlsx 文件
一整本账本
工作表
Worksheet
文件里的一个标签页
账本里的一页纸
单元格
Cell
一个格子,用列字母+行号定位
纸上第几行第几列的交点

读取 Excel 的三步走

第 1 步:load_workbook("文件名.xlsx")   → 把"账本"翻开第 2 步:wb["Sheet1"] 或 wb.active     → 翻到某一页第 3 步:ws["A1"].value 或 逐行遍历    → 读出格子的内容

就这么简单。三步对应你在 Excel 软件里的三个动作:双击打开→点标签页→看格子。

三、拆开看

3.1 打开工作簿 + 选工作表

import openpyxl# 第1步:翻开账本wb = openpyxl.load_workbook("成绩单.xlsx")# 第2步:翻到第一页(两种写法都可以)ws = wb.active                # 默认打开的那一页# 或者:ws = wb["Sheet1"]             # 按名字选某一页

wb.active 是打开文件时默认显示的那个工作表,通常是 Sheet1。如果你知道表名,直接用 wb["表名"] 更靠谱。

3.2 读单个格子

# 方法1:像Excel一样用地址name = ws["A2"].value      # 读 A2 格子,拿到"张三"score = ws["B2"].value     # 读 B2 格子,拿到 85# 方法2:用行号和列号name = ws.cell(row=2, column=1).value   # 第2行第1列 = A2score = ws.cell(row=2, column=2).value  # 第2行第2列 = B2

关键点.value 不能忘!没有 .value 你拿到的是 Cell 对象本身,不是里面的内容。

print(ws["A2"])        # 输出:<Cell 'Sheet1'.A2>  ← 这是个对象print(ws["A2"].value)  # 输出:张三               ← 这才是内容

3.3 遍历整张表——逐行读

一个格子一个格子读太傻了。openpyxl 支持一行一行遍历

# 遍历所有行(从第1行开始)for row in ws.iter_rows(values_only=True):    print(row)    # 输出:(None, None, None)       ← 第1行如果是空行    # 输出:('姓名', '语文', '数学')   ← 第2行是表头    # 输出:('张三', 85, 92)          ← 第3行是数据    # 输出:('李四', 78, 88)

values_only=True 的意思是「我只要格子里的值,不要 Cell 对象」。每一行是一个元组,元组里的元素就是这一行从左到右每个格子的内容。

常见用法:跳过表头,从数据行开始读:

for row in ws.iter_rows(min_row=2, values_only=True):    name = row[0]    # 第一列:姓名    chinese = row[1] # 第二列:语文    math = row[2]    # 第三列:数学    print(f"{name}:语文{chinese},数学{math}")

min_row=2 意思是「从第2行开始」,跳过第1行的表头。

3.4 获取表格尺寸

print(f"总共有 {ws.max_row} 行")print(f"总共有 {ws.max_column} 列")

这俩属性告诉你表格有多大。后面做统计特别有用。

3.5 查看所有工作表名

print(wb.sheetnames)# 输出:['语文成绩', '数学成绩', '总分排名']

3.6 完整示例:读取成绩单并计算平均分

import openpyxlwb = openpyxl.load_workbook("成绩单.xlsx")ws = wb.activetotal = 0count = 0# 从第2行开始(跳过表头),遍历所有学生for row in ws.iter_rows(min_row=2, values_only=True):    name = row[0]    chinese = row[1]    math = row[2]    avg = (chinese + math) / 2    print(f"{name}:语文{chinese},数学{math},平均{avg}")    total += avg    count += 1print(f"\n全班平均分:{total / count:.1f}")

这段代码读 50 个人的成绩,不到 1 秒出结果。手动算至少半小时。

四、常见坑

坑 1:文件找不到——FileNotFoundError

wb = openpyxl.load_workbook("成绩单.xlsx")# 报错:FileNotFoundError: [Errno 2] No such file or directory

原因:Python 在「当前工作目录」里找这个文件,而文件可能放在别的地方。

解决三招

  • 把 .xlsx 文件拖到和 .py 文件同一个文件夹里(最省事)
  • 或者写完整路径:load_workbook(r"C:\Users\你的名字\Desktop\成绩单.xlsx")
  • 或者先 import os; print(os.getcwd()) 看看 Python 当前在哪个文件夹

别忘了 路径前面加 r,不然 \n\t 会被当成转义字符!

坑 2:表名写错了

ws = wb["Sheet1"]   # 但实际表名叫 "语文成绩"# 报错:KeyError: 'Worksheet Sheet1 does not exist.'

解决:先打印所有表名确认一下:

print(wb.sheetnames)   # 看看实际有哪些表

坑 3:忘了 .value

name = ws["A2"]       # 拿到的是 Cell 对象print(name)            # <Cell 'Sheet1'.A2>

这是新手最容易犯的错——以为自己读到了数据,实际上拿到了一个对象。读内容一定要加 .value

坑 4:遍历时包含了表头

for row in ws.iter_rows(values_only=True):    score = int(row[1])   # 第1行是表头"语文",int("语文") 会报错!

解决:加 min_row=2 跳过表头。

坑 5:空行/合并单元格

Excel 里如果有空行或合并单元格,iter_rows 也会读出来。空行读出来是 (None, None, None, ...),处理前最好判断一下:

for row in ws.iter_rows(min_row=2, values_only=True):    if row[0] is None:      # 第一列是空的,跳过        continue    # 正常处理...

五、生活类比

🔍 放大镜类比

读 Excel 文件的过程,就像你拿一个放大镜看一本账本:

步骤
你在做的事
Python 做的事
1
从抽屉里拿出账本
load_workbook("账本.xlsx")
2
翻到你需要的那一页
ws = wb["三月收支"]
3
眼睛瞄准第3行第2列
ws.cell(row=3, column=2)
4
读出格子里的数字
.value

唯一的区别:你用眼睛看一个格子要 1 秒,Python 1 秒能看几千个格子

📖 读书类比

也可以把 Excel 比作一本书:

  • 工作簿(Workbook)= 整本书
  • 工作表(Worksheet)= 书里的一章
  • 单元格(Cell)= 章里的一个字

load_workbook 是翻开书,wb["章节名"] 是翻到某一章,.value 是读出那个字。

六、练一练

第 1 题:手动建一个 Excel 并读取

用 Excel 新建一个文件叫 成绩表.xlsx,做成这样:

A
B
C
姓名
语文
数学
张三
85
92
李四
78
88
王五
92
76

保存到和你的 .py 文件同一个文件夹。然后写代码:

import openpyxlwb = openpyxl.load_workbook("成绩表.xlsx")ws = wb.active# 分别读 A1、B1、A2、B2 的值,打印出来print(ws["A1"].value)print(ws["B1"].value)print(ws["A2"].value)print(ws["B2"].value)

你看到了什么?

第 2 题:遍历成绩表

用第 1 题的成绩表,写代码遍历所有学生的成绩并打印:

import openpyxlwb = openpyxl.load_workbook("成绩表.xlsx")ws = wb.activefor row in ws.iter_rows(min_row=2, values_only=True):    print(f"{row[0]}:语文{row[1]},数学{row[2]}")

修改代码,在每行后面加上两科的平均分。

第 3 题:统计全班数据

继续用成绩表,写代码统计:

  • 全班有多少人?
  • 语文平均分是多少?
  • 数学最高分是谁?

提示:用 ws.max_row 获取行数,在遍历过程中累加分数、比较大小。

第 4 题(挑战题):读取多个工作表

新建一个 Excel,包含两个工作表:Sheet1 叫「期中成绩」,Sheet2 叫「期末成绩」。每个表里都有张三、李四、王五的成绩。

写代码分别读取两个表,计算每个人期中+期末的总平均分,打印排名。

提示:wb.sheetnames 获取所有表名,wb["期中成绩"] 选表。

小结

  • load_workbook
     翻开工簿,wb["表名"] 选工作表
  • ws["A1"].value
     读单个格子,别忘了 .value
  • ws.iter_rows(min_row=2, values_only=True)
     逐行遍历数据
  • ws.max_row
     / ws.max_column 获取表格尺寸
  • 常见坑:文件找不到、表名写错、忘了 .value、没跳表头
  • Excel 的三层结构:工作簿 → 工作表 → 单元格,和你在软件里的操作一模一样

下节课,我们不止读 Excel——我们要 Excel。把字典里的成绩数据,一键导出成班主任要的那种带格式的 .xlsx 文件!


📦 本篇练习答案 + 全套习题包

做完题卡住了?别硬憋——这一篇的练习答案,以及已发各篇(while / for / 字符串切片 / 列表 vs 元组 / range / 字典键值对……)的答案 PDF,我都打包好了,在下面网盘里。

🔗 网盘链接:

https://pan.baidu.com/s/1QCLD4qj0wEuJgokiZf5SdQ?pwd=i273

💡 提取码 i273 已嵌在链接里,点开直接下,不用再输~

卡住了随时在公众号留言问我,或者直接回复关键词 答案 也能拿到。我看到都会回 👋

最新文章

随机文章

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