当前位置:首页>python>python 基础数据处理与内置函数

python 基础数据处理与内置函数

  • 2026-08-18 23:10:34
python 基础数据处理与内置函数

1. print():告别满屏乱码,定制你的测试日志

使用场景:跑自动化时,控制台输出的日志太乱,想把时间戳、接口名、状态码用特定符号拼成一行,方便后续排查。

使用说明:用 sep 参数自定义多对象之间的分隔符,用 end 参数控制结尾不换行。

基础示例代码:

# 基础用法:默认用空格分隔,结尾换行print("接口登录测试""状态码:200""耗时:0.5s")

高阶示例代码:

# 高阶用法:用 "|" 分隔,结尾不换行(适合做进度条或连续日志)print("2026-07-11""POST /api/login""200 OK", sep=" | ", end=" >>> ")print("断言通过")

对应输出:

基础:接口登录测试 状态码:200 耗时:0.5s

高阶:2026-07-11 | POST /api/login | 200 OK >>> 断言通过‍

2. print():把测试结果直接写进文件

使用场景:CI/CD 流水线跑完,不想看控制台,想把测试报告直接重定向输出到本地 txt 文件。

使用说明:利用 file 参数,配合 with open,直接把 print 的内容写进文件。

基础示例代码:

# 基础用法:写入文件并自动关闭with open("test_report.txt""w", encoding="utf-8"as f:    print("测试用例1:登录接口", file=f)    print("测试结果:PASS", file=f)

高阶示例代码:

# 高阶用法:追加模式写入,并强制刷新缓冲区(防止日志丢失)with open("test_report.txt""a", encoding="utf-8"as f:    print("测试用例2:订单接口""FAIL", sep=" | ", file=f, flush=True)

对应输出:

(控制台无输出,直接写入 test_report.txt 文件)‍

3. input():让自动化脚本“活”起来

使用场景:写了一个通用的接口测试脚本,每次跑之前,想手动输入一下要测试的环境(Test/Prod)或者特定的 Token。

使用说明:input() 永远返回字符串,括号里可以写提示语。

基础示例代码:

# 基础用法:获取用户输入并打印env = input("请输入要测试的环境 (test/prod): ")print(f"即将开始 {env} 环境的接口测试...")

高阶示例代码:

# 高阶用法:一次输入多个参数,用 split() 拆分info = input("请输入 接口路径 和 期望状态码 (空格分隔): ").split()print(f"准备测试接口: {info[0]},期望状态码: {info[1]}")

对应输出:

基础:

请输入要测试的环境 (test/prod): test

即将开始 test 环境的接口测试...

高阶:

请输入 接口路径 和 期望状态码 (空格分隔): /api/login 200

准备测试接口: /api/login,期望状态码: 200‍

4. input():防呆设计,输入非数字也不崩溃

使用场景:脚本需要输入并发线程数,但同事手滑输入了字母 "abc",程序直接报错退出?不行,得加个异常处理。

使用说明:结合 try-except 捕获 ValueError,实现输入验证。

基础示例代码:

# 基础用法:尝试转换类型,失败则提示try:    threads = int(input("请输入并发线程数: "))    print(f"设置线程数为: {threads}")except ValueError:    print("输入无效,必须是纯数字!")

高阶示例代码:

# 高阶用法:死循环验证,直到用户输入合法数据才放行while True:    try:        timeout = int(input("请输入接口超时时间(秒): "))        if timeout > 0break        print("超时时间必须大于0,请重新输入")    except ValueError:        print("格式错误,请输入整数")print(f"超时时间已设置为: {timeout}秒")

对应输出:

基础:(输入abc) 输入无效,必须是纯数字!

高阶:

请输入接口超时时间(秒): abc

格式错误,请输入整数

请输入接口超时时间(秒): -1

超时时间必须大于0,请重新输入

请输入接口超时时间(秒): 5

超时时间已设置为: 5秒‍

5. open():读取测试用例配置

使用场景:把几十个接口的 URL 和参数写在 config.txt 里,自动化脚本启动时自动读取并解析。

使用说明:使用 r 模式读取,结合 strip() 去除换行符。

基础示例代码:

# 基础用法:逐行读取接口配置with open("config.txt""r", encoding="utf-8"as f:    for line in f:        print(f"读取到接口: {line.strip()}")

高阶示例代码:

# 高阶用法:读取并过滤掉注释行(以#开头with open("config.txt""r", encoding="utf-8"as f:    apis = [line.strip() for line in f if line.strip() and not line.startswith("#")]print(f"有效接口数量: {len(apis)}")

对应输出:

基础:读取到接口: POST /api/login

高阶:有效接口数量: 5‍

6. open():记录自动化执行日志

使用场景:跑大批量接口测试时,实时把每个接口的耗时、结果追加写入日志文件。

使用说明:使用 a (append) 模式,确保新日志不会覆盖旧日志。

基础示例代码:

# 基础用法:追加写入测试结果with open("run.log""a", encoding="utf-8"as f:    f.write("2026-07-11 10:00:00 | /api/user | PASS\n")

高阶示例代码:

# 高阶用法:使用 print 的 file 参数,格式化写入with open("run.log""a", encoding="utf-8"as f:    print("2026-07-11""/api/order""FAIL""耗时:2.1s", sep=" | ", file=f)

对应输出:

(控制台无输出,内容追加写入 run.log 文件)‍

7. eval():把字符串变回字典(解析响应)

使用场景:某些老旧系统的接口,返回的不是标准 JSON,而是 Python 字典格式的字符串 '{"code": 200}',怎么快速转成字典?

使用说明:eval() 会把字符串当作 Python 表达式执行,返回结果。

基础示例代码:

# 基础用法:字符串转字典resp_str = '{"code": 200, "msg""success"}'resp_dict = eval(resp_str)print(f"状态码是: {resp_dict['code']}")

高阶示例代码:

# 高阶用法:直接在 eval 里做简单运算calc_str = "100 * 2 + 50"result = eval(calc_str)print(f"接口响应计算结果: {result}")

对应输出:

基础:状态码是: 200

高阶:接口响应计算结果: 250‍

8. eval():动态生成断言条件

使用场景:测试数据驱动时,期望结果写在 Excel 里变成了字符串 "response['age'] > 18",想在代码里动态执行这个断言。

使用说明:结合变量作用域,让 eval 能够访问当前的变量。

基础示例代码:

# 基础用法:动态计算布尔值response = {"age"20}assertion = "response['age'] > 18"print(f"断言结果: {eval(assertion)}")

高阶示例代码:

# 高阶用法:限制 eval 的全局命名空间,防止恶意代码safe_dict = {"__builtins__": {}}response = {"age": 20}result = eval("response['age'] == 20", safe_dict, {"response": response})print(f"安全断言结果: {result}")

对应输出:

基础:断言结果: True

高阶:安全断言结果: True‍

9. eval():解析复杂的嵌套响应

使用场景:接口返回了多层嵌套的数据,想通过传入一个字符串路径 "data['user']['name']" 来提取值。

使用说明:利用 eval 的动态执行特性,实现类似 JSONPath 的简易提取。

基础示例代码:

# 基础用法:提取嵌套字段data = {"user": {"name""Alice""age"25}}path = "data['user']['name']"print(f"提取到的名字: {eval(path)}")

高阶示例代码:

# 高阶用法:封装成一个提取函数def get_value(data, path):    return eval(f"data{path}")result = get_value({"user": {"name""Bob"}}, "['user']['name']")print(f"动态提取结果: {result}")

对应输出:

基础:提取到的名字: Alice

高阶:动态提取结果: Bob‍

10. exec():动态加载测试模块

使用场景:写了一个自动化框架,想把当前目录下所有的 test_*.py 文件里的公共方法,动态加载到内存里执行。

使用说明:exec() 可以执行多行代码字符串,甚至整个脚本。

基础示例代码:

# 基础用法:动态执行一段代码code = "x = 10\ny = 20\nprint(f'动态计算和: {x+y}')"exec(code)

高阶示例代码:

# 高阶用法:在指定的字典作用域中执行,并提取变量namespace = {}exec("BASE_URL = 'https://api.test.com'\nTIMEOUT = 30", namespace)print(f"加载的配置: {namespace['BASE_URL']}")

对应输出:

基础:动态计算和: 30

高阶:加载的配置: https://api.test.com‍

11. exec():动态生成测试类

使用场景:根据数据库里的 100 个接口配置,动态生成 100 个 Pytest 测试函数,而不是手写 100 遍。

使用说明:拼接出完整的 def test_xxx(): 代码字符串,用 exec 注入到当前环境。

基础示例代码:

# 基础用法:动态定义一个函数func_code = "def test_login():\n    assert 1 + 1 == 2"exec(func_code)test_login() # 调用动态生成的函数print("动态函数执行成功")

高阶示例代码:

# 高阶用法:循环动态生成多个测试方法for i in range(3):    exec(f"def test_api_{i}():\n    print(f'正在执行接口 {i}')")test_api_0()test_api_1()

对应输出:

基础:动态函数执行成功

高阶:正在执行接口 0

正在执行接口 1‍

12. exec():读取并执行外部测试脚本

使用场景:把一些通用的鉴权、Token 获取逻辑写在 auth_helper.py 里,主脚本启动时动态加载。

使用说明:结合 open().read() 和 exec(),实现脚本的热加载。

基础示例代码:

# 基础用法:执行外部文件内容with open("auth_helper.py""r"as f:    exec(f.read())print("鉴权模块加载完毕")

高阶示例代码:

# 高阶用法:在隔离的命名空间中执行外部脚本env = {}with open("auth_helper.py""r"as f:    exec(f.read(), env)print(f"外部脚本定义的变量: {env}")

对应输出:

基础:鉴权模块加载完毕

高阶:外部脚本定义的变量: {'builtins': {...}, 'TOKEN': 'abc123'}‍

13. print() + input():交互式测试菜单

使用场景:写了一个包含“造数据”、“跑回归”、“清缓存”的测试工具箱,用菜单让用户选择。

使用说明:结合 print 的多行字符串和 input 的循环。

基础示例代码:

# 基础用法:简单的单次选择print("1. 造数据\n2. 跑回归")choice = input("请输入选项: ")print(f"你选择了: {choice}")

高阶示例代码:

# 高阶用法:带验证的循环菜单while True:    print("\n=== 自动化测试工具箱 ===")    print("1. 造数据  2. 跑回归  3. 退出")    opt = input("请选择: ").strip()    if opt == '3'        print("已退出"); break    elif opt in ('1','2'):         print(f"正在执行任务 {opt}...")    else        print("无效选项,请重新输入")

对应输出:

基础:

造数据

跑回归

请输入选项: 1

你选择了: 1

高阶:(循环交互输出)‍

14. open() + eval():解析自定义格式的测试数据

使用场景:测试数据存在一个 txt 文件里,每行是一个 Python 字典字符串,需要读出来转成真正的字典列表。

使用说明:文件读取结合 eval() 转换。

基础示例代码:

# 基础用法:单行转换line = '{"id": 1, "name""test"}'data = eval(line)print(f"解析出的ID: {data['id']}")

高阶示例代码:

# 高阶用法:批量读取并转换with open("data.txt""r"as f:    dataset = [eval(line.strip()) for line in f if line.strip()]print(f"共加载 {len(dataset)} 条测试数据")

对应输出:

基础:解析出的ID: 1

高阶:共加载 5 条测试数据‍

15. exec() + print():动态生成并展示测试报告

使用场景:根据跑完的测试结果字典,动态生成一段格式化的 Markdown 报告代码并执行输出。

使用说明:用字符串拼接出报告生成逻辑,用 exec 执行。

基础示例代码:

# 基础用法:动态打印报告report_code = "print('--- 测试报告 ---')\nprint('通过: 10, 失败: 2')"exec(report_code)

高阶示例代码:

# 高阶用法:传入变量生成动态报告results = {"pass"10"fail"2}code = f"print(f'通过率: {results['pass']/(results['pass']+results['fail'])*100:.1f}%')"exec(code)

对应输出:

基础:

--- 测试报告 ---

通过: 10, 失败: 2

高阶:通过率: 83.3%‍

测试老鸟的避坑指南:

慎用 eval() 和 exec():这俩函数威力巨大,但千万不要用来执行用户从前端或外部接口直接传进来的字符串!黑客可以通过它们执行 os.system('rm -rf /') 删库。在自动化里,只用来处理你自己内部生成的、绝对安全的代码或数据。

input() 会阻塞:在 CI/CD 流水线(如 Jenkins)里跑自动化时,千万别用 input(),因为流水线没有控制台让你输入,脚本会永远卡死。input() 只适合本地手动调试。

print() 写文件记得 flush:如果程序意外崩溃,缓冲区里的日志可能没写进去,加上 flush=True 能保命。

 每一次互动,皆是鼓励, 每一份支持,共促成长。

商务合作:RYXtest

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-08-21 15:52:23 HTTP/2.0 GET : https://f.mffb.com.cn/a/504799.html
  2. 运行时间 : 0.351327s [ 吞吐率:2.85req/s ] 内存消耗:4,597.71kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=9f870a98bc3c66033f61b140859a16bc
  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.001075s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001590s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.010077s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000936s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001359s ]
  6. SELECT * FROM `set` [ RunTime:0.004649s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001569s ]
  8. SELECT * FROM `article` WHERE `id` = 504799 LIMIT 1 [ RunTime:0.030558s ]
  9. UPDATE `article` SET `lasttime` = 1787298743 WHERE `id` = 504799 [ RunTime:0.046794s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000871s ]
  11. SELECT * FROM `article` WHERE `id` < 504799 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.019583s ]
  12. SELECT * FROM `article` WHERE `id` > 504799 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.022726s ]
  13. SELECT * FROM `article` WHERE `id` < 504799 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.032407s ]
  14. SELECT * FROM `article` WHERE `id` < 504799 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.002012s ]
  15. SELECT * FROM `article` WHERE `id` < 504799 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.002008s ]
0.355027s