当前位置:首页>python>代码画家:用Python画星星、画花、画迷宫

代码画家:用Python画星星、画花、画迷宫

  • 2026-02-28 01:13:25
代码画家:用Python画星星、画花、画迷宫

当数学公式变成画笔轨迹,代码本身就是艺术


🎬 开场:女儿的"美术课危机"

那天,女儿从美术课回来,把画纸拍在桌上:

女儿: "妈妈,老师说我画的树太死板了……"

我: "怎么死板了?"

女儿: "就是……就是每一根树枝都一样长,像电线杆!真正的树是有的长有的短,有的弯有的直……"

爸爸:(从旁边探头)"闺女,让Python帮你画一棵真正的树?"

女儿: "啊?Python还会画画?"

爸爸: "不仅会画,还能画出你画不出来的——分形树,和真树一样,每一枝都不一样,但整体看起来又像!"

十分钟后,女儿看着屏幕上"生长"出来的树,树枝自动分叉、变细、弯曲,惊呆了:

"它在画自己!像真的树一样!"

这就是Turtle的魔法:一只小海龟,听你指挥,用数学的规律,画出自然的美丽。


🎪 第一幕:认识Turtle——你的数字画笔

什么是Turtle?

想象你有一只机器人小海龟

  • 它拿着一支笔,可以在画布上爬行

  • forward(100)= 向前爬100步,画出一条线

  • left(90)= 原地左转90度

  • penup()= 抬起笔(移动但不画)

  • pendown()= 放下笔(开始画)

  • pencolor("red")= 换红笔

  • speed(0)= 最快速度(0是瞬移,1-10是越来越快)

核心秘密:Turtle画图就是把数学变成视觉——角度、距离、循环、递归,都变成图案。


🎬 第二幕:第一招——彩色螺旋(循环的视觉化)

核心思路:让小海龟边转圈边前进,每次转一点点,画出一个螺旋。

基础版:单色螺旋

import turtlet = turtle.Pen()           # 创建画笔t.speed(0)                 # 最快速度for x in range(100):       # 画100条线    t.forward(x)           # 线越来越长(第1条线1像素,第100100像素)    t.left(91)             # 每次左转91度(不是90度,所以不会闭合)

效果:一个不断向外扩散的方形螺旋!

女儿的发现:"91度不是90度,所以它不会画成正方形,而是转着转着就歪了,像蜗牛壳!"

升级版:四色螺旋

import turtlet = turtle.Pen()t.speed(0)turtle.bgcolor("black")    # 黑色背景,颜色更鲜艳colors = ["red", "yellow", "blue", "green"]for x in range(100):    t.pencolor(colors[x % 4])    # 循环使用4种颜色:0%4=0(红), 1%4=1(黄)...    t.forward(x)    t.left(91)

效果:红→黄→蓝→绿→红→黄……的彩虹螺旋!

核心概念:x % 4是取模运算(除法的余数),让颜色循环使用。这是"周期性变化"的数学表达。

高级版:多边形螺旋

import turtlet = turtle.Pen()t.speed(0)turtle.bgcolor("black")sides = 6                  # 改成3是三角形,4是正方形,5是五角星形...colors = ["red""yellow""blue""green""purple""orange"]for x in range(360):    t.pencolor(colors[x % sides])    t.forward(x * 3 / sides + x)    # 边数越多,线越短    t.left(360 / sides + 1)          # 360度÷边数 = 正多边形内角    t.width(x * sides / 200)         # 线越来越粗

效果:六边形的彩色螺旋,像万花筒!

跨学科连接:

  • 数学:角度、多边形内角和、等差数列(线长递增)

  • 艺术:色彩循环、线条粗细变化、构图平衡


🎭 第三幕:第二招——递归树(分形的魅力)

核心思路:树的大枝和小枝形状相似,这叫自相似性(分形)。用递归(函数调用自己)实现。

什么是递归?

想象俄罗斯套娃

  • 大娃娃里有个小娃娃

  • 小娃娃里有个更小的娃娃

  • 直到娃娃太小,停止

递归函数同理:

  • 画一根树枝

  • 在树枝末端画两根小树枝(调用自己)

  • 直到树枝太短,停止

代码:画一棵分形树

import turtledef 画树(树枝长度, 角度, 深度):    """递归画树函数"""    if 树枝长度 > 5:                    # 停止条件:树枝太短就不画了        # 画当前树枝        t.forward(树枝长度)        # 画右边的小树枝(递归!)        t.right(角度)        画树(树枝长度 * 0.7, 角度, 深度 + 1)    # 长度×0.7,越来越细        # 画左边的小树枝(再递归!)        t.left(角度 * 2)        画树(树枝长度 * 0.7, 角度, 深度 + 1)        # 回到原位(像退后一步)        t.right(角度)        t.backward(树枝长度)# 初始化t = turtle.Pen()t.speed(0)t.left(90)                  # 朝上画t.penup()t.goto(0, -200)            # 从底部开始t.pendown()t.color("brown")           # 树干棕色# 画树!画树(100200)           # 主干100像素长,分叉角度20度turtle.done()              # 保持窗口打开

效果:一棵树从底部"生长"出来,自动分叉,越来越细,像真正的树!

女儿的震惊:"它自己调用自己!就像……就像我在镜子里看到镜子里的我!"

核心概念:

  • 递归:函数调用自己,解决"大问题分解成小问题"

  • 分形:自相似的几何形状,自然界到处都是(树、云、海岸线、雪花)

  • 终止条件:if 树枝长度 > 5,防止无限递归

升级版:彩色随机树

import randomdef 画彩色树(树枝长度, 角度):    if 树枝长度 > 5:        # 树干棕色,树叶绿色        if 树枝长度 < 20:            t.color("green")           # 小树枝变绿叶        else:            t.color("brown")        t.forward(树枝长度)        # 随机变化角度,更自然        右角度 = 角度 + random.randint(-1010)        左角度 = 角度 + random.randint(-1010)        t.right(右角度)        画彩色树(树枝长度 * random.uniform(0.60.8), 角度)        t.left(右角度 + 左角度)        画彩色树(树枝长度 * random.uniform(0.60.8), 角度)        t.right(左角度)        t.backward(树枝长度)        t.color("brown")               # 退回去时恢复棕色

效果:每棵树都不一样!有的枝繁叶茂,有的歪歪扭扭,像真实的树林。


🎪 第四幕:第三招——随机艺术画(计算机的"创造力")

核心思路:用random模块随机决定位置、颜色、大小、形状,让电脑"自由创作"。

随机螺旋花园

import turtleimport randomt = turtle.Pen()t.speed(0)turtle.bgcolor("black")colors = ["red""yellow""blue""green""orange""purple""white"]def 随机螺旋():    """在随机位置画一个随机螺旋"""    # 随机位置    x = random.randint(-300300)    y = random.randint(-300300)    # 随机大小    大小 = random.randint(1040)    # 随机颜色    t.pencolor(random.choice(colors))    # 移动过去(不画)    t.penup()    t.setpos(x, y)    t.pendown()    # 画螺旋    for m in range(大小):        t.forward(m * 2)        t.left(91)# 画50个随机螺旋for n in range(50):    随机螺旋()

效果:满屏彩色螺旋,像烟花,像星系,像万花筒!

女儿的评价:"这比我自己画的还好看!因为……因为我不会想到把紫色和绿色放在一起!"

互动版:点击哪里画哪里

import turtleimport randomt = turtle.Pen()t.speed(0)turtle.bgcolor("black")colors = ["red""yellow""blue""green""orange""purple"]def 画螺旋(x, y):    """在鼠标点击的位置画螺旋"""    t.pencolor(random.choice(colors))    大小 = random.randint(1040)    t.penup()    t.setpos(x, y)    t.pendown()    for m in range(大小):        t.forward(m * 2)        t.left(92)# 点击屏幕任意位置,调用画螺旋函数turtle.onscreenclick(画螺旋)turtle.done()

玩法:点击屏幕,就在哪里生成一个彩色螺旋!你可以"种"出一片螺旋花园。


🎥 NG镜头:3个让Turtle"翻车"的常见错误

❌ NG镜头1:"窗口一闪就关了,什么都没看到!"

案发现场:程序运行完,窗口瞬间消失。

导演复盘:

忘了写turtle.done()screen.mainloop()!程序执行完就退出了,不会保持窗口。

急救方案:在代码最后加:

turtle.done()  # 或 screen.mainloop()

❌ NG镜头2:"递归树变成一团乱麻,像蜘蛛网!"

案发现场:树的分枝乱飞,不是向下生长,而是向各个方向。

导演复盘:

忘了控制方向!每次递归后,要用backward退回去,并且用right/left恢复角度。否则海龟就像醉汉,越走越偏。

急救方案:确保每次递归后:

t.right(角度)        # 恢复角度t.backward(长度)     # 退回去

❌ NG镜头3:"颜色报错,说不是有效颜色!"

案发现场:写了t.pencolor("红色"),程序报错。

导演复盘:

Turtle只认英文颜色名RGB值。中文"红色"不认识,要写"red"(255, 0, 0)

急救方案:

  • 使用英文颜色名:"red","yellow","blue","green","purple","orange","white","black"


👨‍💻 程序员爸爸点评:从"精确控制"到"涌现创造"

(爸爸看着满屏的随机螺旋,在草稿纸上画的图)

闺女,你今天掌握了三种编程范式

1. 迭代(Iteration):彩色螺旋用for循环,重复+变化创造规律。这是算法艺术的基础——用简单的规则,生成复杂的图案。

2. 递归(Recursion):分形树用函数调用自己,自相似+缩放创造自然形态。这是分形几何的核心——大自然用递归构建万物(树、血管、河流、闪电)。

3. 随机性(Randomness):随机艺术用random引入不可预测性,这是生成艺术(Generative Art)的秘密。计算机的"创造力"不是模仿人,而是探索人想不到的组合

关于数学与艺术的连接:

  • 角度:91度vs90度,螺旋vs正方形

  • 比例:0.7的缩放因子,决定树的"丰满度"

  • 黄金分割:试试角度 = 137.5度(黄金角),画出向日葵螺旋,这是自然界最优的排布方式!

最后的挑战:你能用L系统(Lindenmayer System)画植物吗?这是一种字符串替换规则:

  • 开始:"F"(向前画)

  • 规则:F → F[+F]F[-F]F(F是画线,[]是保存/恢复位置,+/-是转弯)

  • 迭代3次,得到复杂的植物形态

这是形式文法在图形中的应用,也是现代计算机生成植物的标准方法。


🏆 分层作业:从"小画家"到"大艺术家"

✅ 必做作业(基础三招)

《代码画家作品集》

  • 彩色螺旋:至少4种颜色,边数可调(3-8边形)

  • 分形树:棕色树干+绿色树叶,随机角度

  • 随机花园:10个随机位置、随机大小、随机颜色的螺旋

提交方式:Trinket链接,或录制视频展示画图过程(Turtle的慢速模式可以看清每一笔)。


🥉 青铜挑战(画星星)

《夜空中的星星》

  • 五角星:用for循环5次,每次forward(100),right(144)度(180-36=144,五角星内角)

  • 满天星:随机位置画50颗星星,大小不一,颜色从白色到黄色渐变

  • 闪烁效果:用turtle.tracer(0)关闭动画,一次性显示,模拟"瞬间出现"的夜空

数学知识:五角星的角度计算(外角36度,转向144度)。


🥈 白银挑战(画花)

《数字花园》

  • 一朵花:中心圆+6个花瓣(椭圆或圆)

  • 花茎:用递归画弯曲的茎(像分形树,但只有一侧分支)

  • 随机花园:3-5朵花,位置、大小、颜色随机,组成"花丛"

工程思维点:封装画一朵花(x, y, 大小, 颜色)函数,复用画多朵。


🥇 黄金挑战(画迷宫)

《递归迷宫生成器》

递归分割法画迷宫:

1.画一个大方框

2.在中间画一堵墙,留一个缺口(门)

3.在墙的左右/上下两侧,递归画小迷宫

4.直到方框太小,停止

爸爸挑战:这是深度优先搜索(DFS)算法的可视化,真正的迷宫生成器都用这个思路。试着让小海龟边走边画,像真的在"探索"迷宫!


🎬 尾声:代码,是最美的画笔

那天晚上,女儿把画的树打印出来,贴在床头:

"妈妈,这棵树是我'种'出来的,不是画出来的。我告诉了它规则,它自己长成了这样。"

我点点头:"对,这就是生成艺术的魅力。你不是在复制自然,你是在模拟自然的规律——分枝、生长、随机、迭代。"

是的,孩子。Turtle不仅教你编程,更教你用数学的眼睛看世界:

  • 螺旋是等差数列的可视化

  • 树是递归的自然形态

  • 随机艺术是概率的美学表达

代码,是你通往艺术与科学的桥梁。


📌 下集预告:《地下城冒险:用Python写文字冒险游戏》

(我们要放下画笔,拿起"文字魔杖"——用条件判断选择路径,用循环探索迷宫,用字典存储宝藏,用函数封装战斗。你将创建一个完整的文字冒险游戏:玩家输入指令,程序描述场景,战斗、寻宝、升级……这是游戏开发的终极篇章,也是编程思维的大综合!)

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-28 19:42:43 HTTP/2.0 GET : https://f.mffb.com.cn/a/477268.html
  2. 运行时间 : 0.105739s [ 吞吐率:9.46req/s ] 内存消耗:5,209.86kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=c967598a841f54591c8bc813b0ef983d
  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.001091s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001678s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000713s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000755s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001443s ]
  6. SELECT * FROM `set` [ RunTime:0.000554s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001376s ]
  8. SELECT * FROM `article` WHERE `id` = 477268 LIMIT 1 [ RunTime:0.001139s ]
  9. UPDATE `article` SET `lasttime` = 1772278964 WHERE `id` = 477268 [ RunTime:0.001546s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000646s ]
  11. SELECT * FROM `article` WHERE `id` < 477268 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001073s ]
  12. SELECT * FROM `article` WHERE `id` > 477268 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001093s ]
  13. SELECT * FROM `article` WHERE `id` < 477268 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002064s ]
  14. SELECT * FROM `article` WHERE `id` < 477268 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.002070s ]
  15. SELECT * FROM `article` WHERE `id` < 477268 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.002469s ]
0.109580s