当前位置:首页>python>Python 25个数据清洗技巧:让你的数据质量提升10倍

Python 25个数据清洗技巧:让你的数据质量提升10倍

  • 2026-03-25 18:59:52
Python 25个数据清洗技巧:让你的数据质量提升10倍

你有没有过这样的经历?

辛辛苦苦跑了一天代码,结果因为数据质量太差,得出了一堆错误结论。说实话,我之前也踩过不少坑。

直到我系统掌握了数据清洗技巧,才发现原来可以这么高效。

今天我整理了25个实用的Python数据清洗技巧,从缺失值处理到数据转换,从文本清洗到异常值检测,帮你一次搞定所有数据质量问题。

记住一句话:垃圾进,垃圾出。数据清洗不是浪费时间,而是在为你的分析保驾护航。


1. 检测缺失值

第一步先看看数据里有多少缺失值,做到心中有数。

import pandas as pdimport numpy as npdata = {'A': [1, 2, np.nan, 4], 'B': ['x', np.nan, 'z', 'w'], 'C': [5, 6, 7, 8]}df = pd.DataFrame(data)# 检测每列的缺失值数量missing_values = df.isnull().sum()print("缺失值统计:\n", missing_values)

2. 删除缺失值

缺失值太多的时候,直接删除可能是最快的方法。

# 删除包含缺失值的行df_drop_rows = df.dropna()print("删除含缺失值的行:\n", df_drop_rows)# 删除包含缺失值的列df_drop_cols = df.dropna(axis=1)print("删除含缺失值的列:\n", df_drop_cols)

3. 填充缺失值

不想删除的话,就用合理的方式填充。比如用平均值、中位数,或者前一个有效值。

# 用列平均值填充数值型缺失值df_fill_mean = df.fillna(df.mean())print("用平均值填充:\n", df_fill_mean)# 用前一个有效值填充(前向填充)df_fill_forward = df.fillna(method='ffill')print("前向填充:\n", df_fill_forward)

4. 去除重复值

重复数据会干扰分析结果,要及时清理。

data = {'name': ['Alice', 'Bob', 'Alice', 'Charlie', 'Bob'],        'age': [25, 30, 25, 35, 30]}df = pd.DataFrame(data)# 去除完全重复的行df_no_duplicates = df.drop_duplicates()print("去重后的数据:\n", df_no_duplicates)

5. 基于特定列去重

有时候只想根据某一列去重,保留其他信息。

# 基于name列去重,保留第一次出现的记录df_no_duplicates = df.drop_duplicates(subset=['name'])print("基于name列去重:\n", df_no_duplicates)

6. 文本数据标准化

字符串里的空格、大小写问题,统一清洗一下。

text_data = {'text': ['  Python ', 'JAVA  ', '  C++ ', 'R ']}df_text = pd.DataFrame(text_data)# 去除空格并转为小写df_text['cleaned'] = df_text['text'].str.strip().str.lower()print("清洗后的文本:\n", df_text)

7. 正则表达式清洗

移除文本中的数字和特殊字符,只保留想要的。

# 移除文本中的数字和特殊字符df_text['regex_cleaned'] = df_text['text'].str.replace(r'[^a-zA-Z\s]', '', regex=True)print("正则清洗后的文本:\n", df_text)

8. 数据类型转换

类型不对会出大问题,确保每列都是正确的数据类型。

mixed_data = {'numbers': ['1', '2', '3', '4'], 'booleans': ['True', 'False', 'True', 'False']}df_mixed = pd.DataFrame(mixed_data)# 转换数据类型df_mixed['numbers'] = df_mixed['numbers'].astype(int)df_mixed['booleans'] = df_mixed['booleans'].astype(bool)print("转换后的数据类型:\n", df_mixed.dtypes)

9. 日期时间格式化

日期格式五花八门,统一转换成标准格式很重要。

date_data = {'dates': ['2023-01-01', '01/02/2023', 'March 3, 2023', '04-04-2023']}df_dates = pd.DataFrame(date_data)# 统一日期格式df_dates['formatted'] = pd.to_datetime(df_dates['dates'], errors='coerce')print("标准化的日期:\n", df_dates)

10. 离群值检测

异常值会拉偏整体趋势,用Z-score检测一下。

from scipy import statsdata = {'values': [10, 12, 11, 15, 10, 100, 9, 12, 11, 10]}df_outliers = pd.DataFrame(data)# 使用Z-score检测离群值z_scores = np.abs(stats.zscore(df_outliers['values']))df_outliers['is_outlier'] = z_scores > 2print("离群值检测结果:\n", df_outliers)

11. 分箱离散化

把连续数据分成几个区间,方便分析和展示。

ages = [22, 25, 30, 35, 40, 45, 50, 55, 60, 65]df_ages = pd.DataFrame({'age': ages})# 将年龄分箱bins = [20, 30, 40, 50, 60, 70]labels = ['20s', '30s', '40s', '50s', '60s']df_ages['age_group'] = pd.cut(df_ages['age'], bins=bins, labels=labels)print("年龄分箱结果:\n", df_ages)

12. 数据标准化

不同量纲的数据放在一起分析,需要先标准化。

from sklearn.preprocessing import StandardScalerdata = {'feature1': [100, 200, 300, 400, 500],        'feature2': [0.1, 0.2, 0.3, 0.4, 0.5]}df_scale = pd.DataFrame(data)# 标准化数据scaler = StandardScaler()scaled_data = scaler.fit_transform(df_scale)df_scaled = pd.DataFrame(scaled_data, columns=df_scale.columns)print("标准化后的数据:\n", df_scaled)

13. 独热编码

分类变量不能直接参与计算,要转换成数值。

categories = ['red', 'blue', 'green', 'blue', 'red', 'green']df_cat = pd.DataFrame({'color': categories})# 独热编码df_encoded = pd.get_dummies(df_cat, columns=['color'])print("独热编码结果:\n", df_encoded)

14. 标签编码

类别不多的时候,标签编码比独热编码更节省空间。

from sklearn.preprocessing import LabelEncoderle = LabelEncoder()df_cat['color_label'] = le.fit_transform(df_cat['color'])print("标签编码结果:\n", df_cat)

15. 表合并与连接

数据分散在不同表里,需要合并到一起。

df1 = pd.DataFrame({'key': ['A', 'B', 'C'], 'value1': [1, 2, 3]})df2 = pd.DataFrame({'key': ['B', 'C', 'D'], 'value2': [4, 5, 6]})# 内连接df_inner = pd.merge(df1, df2, on='key', how='inner')print("内连接结果:\n", df_inner)# 左连接df_left = pd.merge(df1, df2, on='key', how='left')print("左连接结果:\n", df_left)

16. 数据透视表

快速汇总数据,按不同维度聚合统计。

data = {    'city': ['北京', '上海', '北京', '上海', '北京'],    'category': ['A', 'A', 'B', 'B', 'A'],    'value': [100, 200, 150, 250, 120]}df = pd.DataFrame(data)pivot = pd.pivot_table(df, values='value', index='city', columns='category', aggfunc='sum')print("透视表结果:\n", pivot)

17. 字符串提取

从文本中提取特定模式的内容。

data = {'text': ['用户ID:12345', '订单号:67890', '编号:11111']}df = pd.DataFrame(data)# 提取数字df['numbers'] = df['text'].str.extract(r':(\d+)')print("提取结果:\n", df)

18. 时间序列重采样

时间序列数据经常需要按不同时间粒度聚合。

date_rng = pd.date_range(start='2023-01-01', end='2023-01-10', freq='D')data = {'date': date_rng, 'value': range(10)}df = pd.DataFrame(data).set_index('date')# 按3天重采样并求和resampled = df.resample('3D').sum()print("重采样结果:\n", resampled)

19. 处理嵌套JSON数据

JSON数据嵌套太深,需要展平成表格。

import jsonfrom pandas import json_normalizejson_data = '''{  "employees": [    {      "name": "John",      "age": 30,      "address": {        "city": "New York",        "zip": "10001"      }    }  ]}'''data = json.loads(json_data)df = json_normalize(data['employees'])print("展平后的数据:\n", df)

20. 数据验证与约束

确保数据符合业务规则,避免后续分析出错。

# 自定义数据验证def validate_data(df):    errors = []    # 年龄必须在18-100之间    if 'age' in df.columns:        invalid_age = df[(df['age'] < 18) | (df['age'] > 100)]        if not invalid_age.empty:            errors.append(f"年龄异常: {len(invalid_age)}条")    # 邮箱必须包含@    if 'email' in df.columns:        invalid_email = df[~df['email'].str.contains('@', na=False)]        if not invalid_email.empty:            errors.append(f"邮箱异常: {len(invalid_email)}条")    return errorsdata = {'age': [25, 30, 17], 'email': ['a@b.com', 'c@d.com', 'invalid']}df = pd.DataFrame(data)errors = validate_data(df)print("验证结果:", errors)

21. 中位数填充

有离群值时,中位数比平均值更稳健。

data = {'A': [1, 2, None, 4, 100]}df = pd.DataFrame(data)# 用中位数填充df_filled = df.fillna(df.median())print("中位数填充结果:\n", df_filled)

22. 条件替换

根据条件批量替换数据,比循环快得多。

data = {'age': [15, 20, 25, 30, 35]}df = pd.DataFrame(data)# 年龄小于18的替换为18df['age'] = df['age'].where(df['age'] >= 18, 18)print("条件替换结果:\n", df)

23. 滚动窗口计算

时间序列数据常用滚动统计来平滑波动。

data = {'date': pd.date_range('2023-01-01', periods=10),        'value': [10, 12, 11, 15, 10, 13, 14, 12, 16, 15]}df = pd.DataFrame(data).set_index('date')# 3天移动平均df['rolling_mean'] = df['value'].rolling(window=3).mean()print("滚动窗口结果:\n", df)

24. 多条件筛选

复杂筛选用query方法,代码更清晰。

data = {    'city': ['北京', '上海', '广州', '北京', '上海'],    'sales': [100, 200, 150, 120, 180],    'category': ['A', 'B', 'A', 'B', 'A']}df = pd.DataFrame(data)# 多条件筛选result = df.query("city == '北京' and sales > 110")print("筛选结果:\n", result)

25. 数据去重并保留最新

重复数据中保留最后一条,通常是最新的信息。

data = {    'id': [1, 2, 1, 3, 2],    'value': [100, 200, 150, 300, 250],    'date': ['2023-01-01', '2023-01-02', '2023-01-03', '2023-01-04', '2023-01-05']}df = pd.DataFrame(data)# 按id去重,保留最新日期的记录df['date'] = pd.to_datetime(df['date'])df_latest = df.sort_values('date').drop_duplicates('id', keep='last')print("去重并保留最新:\n", df_latest)

💡 写在最后

这25个技巧覆盖了数据清洗中最常见的场景。记住,数据清洗不是一次性工作,而是一个持续的过程。

实战建议:

✓ 先做数据探索,了解数据全貌

✓ 从简单处理开始,逐步深入

✓ 保留原始数据,方便回滚

✓ 记录清洗过程,方便复用

数据质量决定分析的上限。花在数据清洗上的时间,永远不会是浪费。

往期Python阅读>>

Python 开发中常见的高效写法

Python 快速开发Web文件服务器

Python 15个自动化获取金融数据接口库

Python 自动化做数据可视化10个示例(含代码),强烈推荐

Python 20个实用高效装饰器

Python 30个操作系统命令,事半功倍

Python 40个实用代码案例:提升效率

Python Webbrowser自动化控制浏览器窗口

Python pathlib的使用方法

Python 自动化监控大文件

Python 90个经典使用技巧

Python 文件监控利器Watchdog的使用方法

Docker 40个自动化管理脚本

Python 回调函数的常见应用场景

Python 40个常见场景的代码示例

Python 20 个常用标准模块

Python requests库用法详解

Python 25个函数的开发技巧

Python 20个提高学习效率的工具

Python 自动化文件管理的10个模板

Python 20个常用的开发库

Python 20个代码优化方法

Python 30个内置函数全面解析

Python 50个命令行技巧

Python 解析与转换JSON格式

你平时用哪些数据清洗技巧?有没有踩过什么坑?评论区聊聊吧~


如果这篇文章对你有帮助,点个在看让更多人看到吧 👇

“无他,惟手熟尔”!有需要的用起来!

想高效学习Python?下面三本精选好书满足你的不同需求!

《流畅的Python(第2版)》——Python进阶必读!深入讲解高级特性与最佳实践,适合想精进的开发者。

《Python从新手到高手》:初学者首选,系统学习全栈技能

《Python数据分析:从零基础入门到案例实战》——数据科学利器!手把手教你用Python处理数据,实战案例学完就能用。

三本书均支持先用后付、运费险和7天无理由退货,放心购买!点击“购买”按钮,立即开启你的Python学习之旅吧!

点击下方,即可购书
------加入知识库与更多人一起学习------

https://ima.qq.com/wiki/?shareId=f2628818f0874da17b71ffa0e5e8408114e7dbad46f1745bbd1cc1365277631c

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-03-27 09:50:57 HTTP/2.0 GET : https://f.mffb.com.cn/a/480783.html
  2. 运行时间 : 0.083418s [ 吞吐率:11.99req/s ] 内存消耗:4,634.45kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=61903c9902cf82934cb066e871a222b1
  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.000509s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000634s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000256s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000286s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000480s ]
  6. SELECT * FROM `set` [ RunTime:0.000196s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000586s ]
  8. SELECT * FROM `article` WHERE `id` = 480783 LIMIT 1 [ RunTime:0.000871s ]
  9. UPDATE `article` SET `lasttime` = 1774576257 WHERE `id` = 480783 [ RunTime:0.007204s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000396s ]
  11. SELECT * FROM `article` WHERE `id` < 480783 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000759s ]
  12. SELECT * FROM `article` WHERE `id` > 480783 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000507s ]
  13. SELECT * FROM `article` WHERE `id` < 480783 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001971s ]
  14. SELECT * FROM `article` WHERE `id` < 480783 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001010s ]
  15. SELECT * FROM `article` WHERE `id` < 480783 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.002287s ]
0.084970s