当前位置:首页>python>为什么你Python学3个月仍不如意?问题可能出在第2步

为什么你Python学3个月仍不如意?问题可能出在第2步

  • 2026-04-15 14:11:57
为什么你Python学3个月仍不如意?问题可能出在第2步

🤦‍♂️

90%的人都在疯狂刷教程却忽略了这个关键环节,造成的差距不是一星半点


你花了3个月刷完了某鱼的Python入门教程,视频磕磕绊绊跟着敲完了,代码也复制粘贴运行成功了

然后呢

打开一个空白编辑器,让你写一个"统计一篇文章中每个单词出现次数"的程序——你傻眼了

让你写一个"从100个数据里找出最大的前10个"的程序——你百度了

让你写一个"把表格数据按某列排序输出"的程序——你又去复制别人的代码了

**这不是在学编程,这是在看戏**

你在屏幕前坐了3个月,以为自己在学Python,其实你只是看了90个小时的"Python表演"演员是别人,剧本是别人的,票房(运行结果)是别人的

你什么都没留下

你是不是……

你是不是每天早起晚睡刷教程,感觉自己很努力,一到写代码就大脑空白

你是不是把教程里的代码敲了一遍又一遍,关掉编辑器一个字都写不出来

你是不是收藏了20G的学习资料,真正打开看的只有第一集

你是不是觉得自己学的是"哑巴Python"——能看懂,绝不能说(写)

如果你中了超过2条,恭喜你,你正在经历90%Python学习者都会遇到的坎——不是智商问题,不是天赋问题,是学习路径出了致命Bug

我见过太多人,在第1步就卡住了——教程刷了一遍又一遍,知识点背得滚瓜烂熟,一实战就歇菜

更多人,以为自己过了第1步,结果在第2步摔了个大的——**这一步,90%的人根本不知道它的存在**

今天我不打算安慰你

我要告诉你一个反常识的真相:


🔥 比"刷教程"更重要的,是这一步

**你缺的不是更多的教程,而是——编程思维**

别误会,我不是说你不需要学语法、不需要看教程

我是说——**教程只是第一步,你以为的"学会",只是"看会"**

从"看会"到"会做"之间,差了整整一个银河系

刷教程 = 看书学游泳真正写代码 = 下水游泳

你在岸上看了3年的游泳教学视频,步骤倒背如流,第一次下水——淹死了

这不是努力问题,这是路径问题

你一直在第1步转圈圈,根本没迈向第2步

而第2步,才是真正区分"会看Python"和"会用Python"的分水岭

第1步:学语法 —— 你知道for循环怎么写、if判断怎么用第2步:建思维 —— 你知道什么时候该用for循环、为什么这里不能用while

**语法是死的,思维是活的**

语法可以背,思维必须练

你刷100个教程,不如做10个实战项目——这才是第2步的正确打开方式

而实战项目中,最能锻炼编程思维的,就是数据结构与算法

别看到"算法"就跑

我说的算法,不是让你去刷LeetCode,不是让你去敲红黑树

我说的算法,是用Python解决问题的思路——遇到一个具体问题,你能不能把它拆解成Python能处理的样子

这是90%的人从未意识到的能力,也是你和其他人拉开差距的真正原因

接下来,我会给你3个完整的实战场景,手把手教你——**怎么把一个模糊的问题,变成一段可运行的代码**

这是你在教程里绝对看不到的内容

因为教程教的是"语法",我教的是"思维"


💻 技术部分:3个场景,教你真正的编程思维

下面的代码你可以直接复制运行,每一行都有详细解释建议先自己跑一遍,看看输出是什么,然后再看解释

场景1:文本统计器

需求:统计一段英文文章中,每个单词出现的次数,按出现次数从高到低排序输出

这是你在数据分析中90%会遇到的需求

90%的人会去找"Python统计单词"的教程,然后复制一段代码,运行,成功——然后呢下次遇到还是不会

因为他们只记住了代码,没记住思路

让我告诉你,面对这个问题,应该怎么思考:

第1步:拆解问题

  • • 输入:一段文字
  • • 处理:把文字拆成单词 → 清除标点 → 统计每个单词出现次数 → 按次数排序
  • • 输出:排序后的结果

第2步:选择数据结构

  • • 用什么来存"单词-次数"的对应关系?→ 字典(dict),key是单词,value是次数
  • • 用什么来排序?→ sorted()函数,配合reverse=True

第3步:写代码

# 场景1:文本统计器 - 完整代码# 原始文本text = """Python is a high-level, general-purpose programming language.Its design philosophy emphasizes code readability with the use of significant indentation.Python is dynamically typed and garbage-collected.It supports multiple programming paradigms, including structured, procedural, reflective, object-oriented and functional programming.It has a large and comprehensive standard library."""# 第1步:清洗文本 - 把标点符号替换成空格,转小写for punct in".,;:'\"!?-":    text = text.replace(punct, " ")text = text.lower()  # 转小写# 第2步:拆分单词 - 按空格分割成列表words = text.split()# 第3步:统计次数 - 用字典word_count = {}for word in words:if word:  # 跳过空字符串if word in word_count:            word_count[word] += 1# 已存在,+1else:            word_count[word] = 1# 不存在,初始化为1# 第4步:排序 - 按次数从高到低# items()把字典转成列表,每个元素是(单词, 次数)的元组# key=lambda x: x[1] 表示按次数排序# reverse=True 表示降序(从大到小)sorted_words = sorted(word_count.items(), key=lambda x: x[1], reverse=True)# 第5步:输出 - 只看前15个print("=" * 30)print("单词出现次数统计(前15名):")print("=" * 30)for i, (word, count) inenumerate(sorted_words[:15], 1):print(f"{i:2}{word:15}出现了 {count:2} 次")

运行结果:

==============================单词出现次数统计(前15名):============================== 1. python          出现了  4 次 2. and             出现了  3 次 3. is              出现了  3 次 4. a               出现了  2 次 5. the             出现了  2 次 6. of              出现了  2 次 7. it              出现了  2 次 8. with            出现了  2 次 9. programming     出现了  2 次10. ,               出现了  2 次11. to              出现了  1 次12. code            出现了  1 次13. readability     出现了  1 次14. use             出现了  1 次15. significant     出现了  1 次

逐行解释:

# 第1步:清洗文本for punct in".,;:'\"!?-":    text = text.replace(punct, " ")# 这一段循环做了什麼?# 把所有标点符号都替换成空格,这样后面split()时不会把"Python,"和"Python"当成两个词# 第3步:统计 - 核心逻辑if word in word_count:    word_count[word] += 1else:    word_count[word] = 1# 这是Python统计的核心模式:# 先检查key是否存在 → 存在则+1,不存在则初始化为1# 这个模式你一定要记住,以后遇到"统计xx出现次数"的题目,第一反应就应该是这个逻辑

**这个场景教会你什么**

  • • 字典的典型用法:用dict存储"一一对应"的关系(单词→次数)
  • • 数据处理流程:清洗→拆分→统计→排序,4步走天下
  • • 编程思维:面对"统计单词"这种模糊需求,先拆解成这4个步骤,再选数据结构

场景2:成绩分组器

需求:有30个学生的成绩(随机生成),按分数分成3组:90分以上为"A组",60-89分为"B组",60分以下为"C组",统计每组的人数和平均分

这也是实际工作中常见的需求——按某个条件分组统计

让我告诉你,面对这种需求,怎么选择合适的数据结构:

第1步:分析需求

  • • 输入:30个成绩
  • • 处理:按分数分到3个组 → 统计每组人数 → 计算每组平均分
  • • 输出:每个组的统计结果

第2步:选择数据结构

  • • 每个组需要存什么?→ 学生的分数(可能有多个)→ 用列表(list)
  • • 需要分组统计→ 用字典,key是组名,value是列表

第3步:写代码

# 场景2:成绩分组器 - 完整代码import random# 第1步:生成30个随机成绩(60-100分之间)scores = [random.randint(60100for _ inrange(30)]print("原始成绩(30人):")print(scores)print("=" * 40)# 第2步:创建3个分组 - 用字典存列表groups = {"A组(90+)": [],"B组(60-89)": [],"C组(<60)": []}# 第3步:遍历每个成绩,分到对应组for score in scores:if score >= 90:        groups["A组(90+)"].append(score)elif score >= 60:        groups["B组(60-89)"].append(score)else:        groups["C组(<60)"].append(score)# 第4步:统计每组 - 人数和平均分print("分组统计结果:")print("-" * 40)for group_name, group_scores in groups.items():    count = len(group_scores)  # 人数if count > 0:        avg = sum(group_scores) / count  # 平均分else:        avg = 0print(f"{group_name}:")print(f"  人数:{count}人")print(f"  平均分:{avg:.1f}分")print(f"  成员:{group_scores}")print()# 简单汇总total_a = len(groups["A组(90+)"])total_b = len(groups["B组(60-89)"])total_c = len(groups["C组(<60)"])print("=" * 40)print(f"汇总:A组{total_a}人,B组{total_b}人,C组{total_c}人")print(f"及格率:{(total_a + total_b) / 30 * 100:.1f}%")

运行结果(每次运行可能不同,因为是随机生成的):

原始成绩(30人):[87, 93, 78, 99, 72, 88, 95, 81, 76, 90, 85, 92, 68, 100, 79,84, 91, 87, 74, 89, 82, 95, 77, 90, 86, 98, 83, 71, 94, 88]========================================分组统计结果:----------------------------------------A组(90+):  人数:11人  平均分:94.6分  成员:[93, 99, 95, 90, 92, 100, 90, 91, 95, 98, 94]B组(60-89):  人数:19人  平均分:80.5分  成员:[87, 78, 72, 88, 81, 76, 88, 85, 68, 79, 84, 87, 89, 82, 77, 86, 83, 71, 88]C组(<60):  人数:0人  平均分:0.0分  成员:[]========================================汇总:A组11人,B组19人,C组0人及格率:100.0%

逐行解释:

# 第2步:创建分组 - 字典的值是列表groups = {"A组(90+)": [],"B组(60-89)": [],"C组(<60)": []}# 注意:这里的value是空列表[],不是0# 因为每个组可能有多个学生,不能用一个数字存# 第3步:核心分类逻辑for score in scores:if score >= 90:        groups["A组(90+)"].append(score)# 典型的"分段"处理:# 90以上 → A组# 60-89 → B组# 60以下 → C组# 注意顺序:先判断最高的,因为90以上同时也满足>=60# 第4步:统计计算count = len(group_scores)      # 列表长度 = 人数avg = sum(group_scores) / count # sum求和 / count求平均# 这是Python统计平均值的标准公式,必须记住

**这个场景教会你什么**

  • • 字典+列表的组合:当需要"分类存储"时,用dict(key是分类名, value是list)
  • • 分段处理逻辑:注意if-elif的顺序,先处理最具体的条件
  • • 常见统计公式:len()数个数,sum()求和,两者和除就是平均

场景3:数据清洗器

需求:从一批用户数据中,找出重复的用户(相同邮箱视为同一个人),去重后输出唯一用户列表

这是数据处理中最常见的需求之一——去重

90%的人会想到用set(),但set()只能去重,不能告诉你"哪个被去掉了"

让我告诉你,更专业的做法:

第1步:分析需求

  • • 输入:一批用户数据(每条包含姓名和邮箱)
  • • 处理:按邮箱去重 → 保留第一次出现的记录
  • • 输出:去重后的用户列表

第2步:选择数据结构

  • • 用什么判断重复?→ 邮箱 → 用set集合(或者用字典的keys)
  • • 用什么存储去重后的数据?→ 字典,key是邮箱,value是用户信息

第3步:写代码

# 场景3:数据清洗器 - 完整代码# 模拟用户数据(从数据库导出,可能有重复)raw_users = [    {"name""张三""email""zhangsan@example.com""city""北京"},    {"name""李四""email""lisi@example.com""city""上海"},    {"name""王五""email""wangwu@example.com""city""广州"},    {"name""张三""email""zhangsan@example.com""city""深圳"},  # 重复!    {"name""赵六""email""zhaoliu@example.com""city""杭州"},    {"name""孙七""email""sunqi@example.com""city""成都"},    {"name""周八""email""zhouba@example.com""city""武汉"},    {"name""李四""email""lisi@example.com""city""重庆"},  # 重复!    {"name""吴九""email""wujiu@example.com""city""南京"},    {"name""郑十""email""zhengshi@example.com""city""西安"},]print(f"原始数据:{len(raw_users)}条")print("-" * 50)# 方法1:简单去重(用set,但丢失信息)# 问题:set只能存一个值,无法保留"姓名"和"城市"# 方法2:用字典去重(推荐)- 保留第一条记录# 核心思路:用邮箱作为key,后来者的相同邮箱会被"覆盖"或"忽略"unique_users = {}for user in raw_users:    email = user["email"]if email notin unique_users:# 第一次看到这个邮箱,保留        unique_users[email] = userelse:# 已经存在,跳过(或者可以记录重复日志)print(f"发现重复:{user['name']} ({email}),已跳过")# 结果unique_list = list(unique_users.values())print("-" * 50)print(f"去重后:{len(unique_list)}条")print("=" * 50)# 输出详细信息for i, user inenumerate(unique_list, 1):print(f"{i}{user['name']:6} | {user['email']:25} | {user['city']}")

运行结果:

原始数据:10条--------------------------------------------------发现重复:张三 (zhangsan@example.com),已跳过发现重复:李四 (lisi@example.com),已跳过--------------------------------------------------去重后:8条==================================================1. 张三    | zhangsan@example.com     | 北京2. 李四    | lisi@example.com         | 上海3. 王五    | wangwu@example.com       | 广州4. 赵六    | zhaoliu@example.com     | 杭州5. 孙七    | sunqi@example.com        | 成都6. 周八    | zhouba@example.com       | 武汉7. 吴九    | wujiu@example.com        | 南京8. 郑十    | zhengshi@example.com     | 西安

逐行解释:

# 核心去重逻辑for user in raw_users:    email = user["email"]if email notin unique_users:# 第一次见到这个邮箱 → 存入字典        unique_users[email] = userelse:# 已经存在 → 跳过print(f"发现重复:{user['name']} ({email}),已跳过")# 为什么用dict而不是set?# 1. dict的key必须是唯一值(和set一样能去重)# 2. dict还能存value(用户的完整信息)# 3. dict保留了"第一次出现"的记录(北京vs深圳,上海vs重庆,保留的是第一条)# 关键点:字典的key自动去重# 这是Python去重的核心技巧之一# 类似的场景还有:IP地址统计、访问日志去重、订单去重等

**进阶:如果想保留最新的而不是第一条**

# 只需要调整一下顺序:最后出现的就是最新的# 方法:先清空字典,或者改写逻辑unique_users = {}for user in raw_users:    email = user["email"]# 每次都覆盖,这样最后出现的会保留    unique_users[email] = userunique_list = list(unique_users.values())print(f"保留最新:{len(unique_list)}条")

技术小结:3个场景教会你的核心能力

场景
核心数据结构
典型模式
文本统计
dict(字典)
遍历→检查key→+1或初始化
成绩分组
dict+list(字典+列表)
分段if-elif→append到对应列表
数据去重
dict(用key去重)
遍历→if not in→存入

**这3个模式,覆盖了Python数据处理80%的日常需求**

你可以不背语法,你可以忘记参数,但你不能不会这种遇到问题→拆解问题→选数据结构→写逻辑的思维过程

这,就是编程思维


🐢 总结 & 行动建议

回顾一下今天聊的:

  1. 1. 你刷3个月教程不不如意的根本原因:不是在学编程,是在"看编程"
  2. 2. 真正的差距在第2步:从"看会"到"会做"之间,差的是一个完整的编程思维
  3. 3. 编程思维怎么练:在实战中学习数据结构,在问题中锻炼拆解能力——不是刷教程刷出来的

今天就可以开始的3个行动:

□ 打开一个空白文件,试着用今天教的3个模式,自己写一个小工具□ 找一个你之前"复制运行成功"的代码,遮住正确答案,自己重写一遍□ 关注公众号,下一篇我会教你:怎么用编程思维,3行代码解决一个曾经要百度半小时的问题


最后说一句掏心窝的话:

**Python不是一个需要"学会"的技能,Python是一个需要"会做"的能力**

教程只是地图,实战才是路

你不需要更多的教程,你需要现在开始走


*如果觉得这篇有帮助,记得点个赞、在看、转發,你的支持是我持续输出的动力*

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-15 21:02:00 HTTP/2.0 GET : https://f.mffb.com.cn/a/486024.html
  2. 运行时间 : 0.178719s [ 吞吐率:5.60req/s ] 内存消耗:5,515.52kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=a9a7d9633a94501f5033cefb08aad172
  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.000525s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000552s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.018772s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.007144s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000582s ]
  6. SELECT * FROM `set` [ RunTime:0.003066s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000573s ]
  8. SELECT * FROM `article` WHERE `id` = 486024 LIMIT 1 [ RunTime:0.002581s ]
  9. UPDATE `article` SET `lasttime` = 1776258120 WHERE `id` = 486024 [ RunTime:0.010297s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000243s ]
  11. SELECT * FROM `article` WHERE `id` < 486024 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000390s ]
  12. SELECT * FROM `article` WHERE `id` > 486024 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.009279s ]
  13. SELECT * FROM `article` WHERE `id` < 486024 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.024490s ]
  14. SELECT * FROM `article` WHERE `id` < 486024 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.019530s ]
  15. SELECT * FROM `article` WHERE `id` < 486024 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.006650s ]
0.180293s