当前位置:首页>python>别再只用加号了!Python字符串拼接的正确姿势

别再只用加号了!Python字符串拼接的正确姿势

  • 2026-02-07 12:13:25
别再只用加号了!Python字符串拼接的正确姿势

你是不是还在用最基础的+号来连接Python里的所有字符串?当你的代码里充斥着str1 + “ ” + str2 + “: ” + value这样的写法时,是时候停下来,看看Python到底为你准备了哪些更强大、更优雅的“胶水”了。

字符串拼接,看似简单,却直接影响着代码的可读性、维护性和性能。今天,我们就来系统地盘一盘Python中那些你应该掌握的字符串拼接方法,让你在不同场景下都能找到最趁手的工具。

一、核心概念解析:为什么需要多种拼接方式?

1.1 基础定义

字符串拼接,简单说就是把多个字符串片段组合成一个新的字符串。在Python中,这几乎是每天都要进行的操作,无论是生成日志、构建SQL语句、拼接URL还是格式化输出,都离不开它。

为什么要这么多方法? 因为场景不同。有时你只想简单合并两三个变量;有时你需要格式化数字、日期;有时你要高效处理成百上千个字符串片段。一种方法无法满足所有需求,这就是Python提供“工具包”的原因。

1.2 核心特点与选择逻辑

不同的拼接方法在以下维度上各有所长:

  • • 可读性与简洁性:代码是否清晰易懂,一目了然。
  • • 性能与效率:在处理大量数据时,速度有多快,内存开销如何。
  • • 灵活性与功能:是否能方便地格式化数字、控制小数位、填充对齐等。
  • • 适用场景:是通用场景,还是专门为特定任务(如路径拼接)优化。

理解了这些,我们就能告别“一把锤子敲所有钉子”的思维,根据任务选择合适的工具。

二、从“古早”到“现代”:常用方法演进

2.1 基础但需谨慎:+号连接

这是所有人的入门第一课,直观且简单。

# 场景:简单的名字问候
first_name = "张"
last_name = "三"
greeting = "你好," + last_name + first_name + "!"
print
(greeting)  # 输出:你好,张三!

# 场景:连接固定字符串与变量

score = 95
message = "你的分数是:" + str(score) + "分。"
print
(message)

优点:极其直观,适合初学者和连接少量(2-3个)字符串。

缺点(致命伤)性能陷阱。由于字符串是不可变对象,每次使用+都会在内存中创建一个新字符串。在循环中大量拼接时(比如for i in range(10000): s += str(i)),会产生大量临时对象,效率极低。

2.2 %格式化:C语言的“遗风”

这是Python早期借鉴C语言的格式化方法,现在在旧代码和老程序员的习惯中仍很常见。

# 场景:格式化输出,控制数字格式
name = "李四"
height = 1.753
# %s字符串,%f浮点数,.2f表示保留两位小数

info = "学员%s的身高是%.2f米。" % (name, height)
print
(info)  # 输出:学员李四的身高是1.75米。

# 使用字典传递参数,顺序更自由

info_dict = “学员%(name)s的身高是%(height).2f米。” % {“name”: name, “height”: height}
print
(info_dict)

优点:格式控制能力强大(数字位数、对齐等),熟悉C语言的人会觉得亲切。

缺点:语法相对繁琐,当参数较多时,格式字符串会变得很长,可读性下降。Python官方已不推荐在新代码中使用

2.3 str.format():承上启下的“万金油”

为了改进%格式化的缺点,Python 2.6引入了format()方法,功能更强大、更灵活。

# 场景:按顺序或索引填充
template = “{}的成绩是{}分。”.format(“王五”, 88)
print
(template)  # 输出:王五的成绩是88分。

template_idx = “{1}看到了{0}.”.format(“小猫”, “小明”)
print
(template_idx)  # 输出:小明看到了小猫。

# 场景:使用关键字参数,清晰明了

template_kw = “产品{name}的库存还有{stock}件。”.format(name=“笔记本”, stock=150)
print
(template_kw)

# 场景:强大的格式规范(:后面)

# <左对齐,^居中,>右对齐,10是宽度

price = 2999.5
report = “|{item:<10}|{price:>10.2f}|”.format(item=“手机”, price=price)
print
(report)  # 输出:|手机      |   2999.50|

优点:功能全面,支持位置参数、关键字参数,格式化选项极其丰富,可读性比%好。

缺点:当变量名需要重复写两遍(在{}内和format()参数里)时,略显冗余。

三、当前王者:f-string (Python 3.6+)

这是目前最受推崇、最Pythonic的字符串拼接/格式化方式。在字符串前加fF,即可直接在花括号{}内写入变量或表达式。

3.1 基本用法:简洁到极致

# 场景:直接嵌入变量
user = “小白”
age = 28
# 直接在字符串中引用变量

welcome = f“欢迎用户{user}, 您的年龄是{age}。”
print
(welcome)

# 场景:支持任意表达式

a, b = 5 3
result = f“{a} 加 {b} 的和是 {a + b}, 积是 {a * b}。”
print
(result)  # 输出:5 加 3 的和是 8, 积是 15。

# 场景:调用函数或方法

name = “python programming”
title = f“转换为标题格式:{name.title()}”
print
(title)  # 输出:转换为标题格式:Python Programming

3.2 高级格式化:依然强大

# 场景:数字格式化、对齐
import
 math
pi = math.pi
# .3f 保留3位小数,:10 宽度为10, ^ 居中

formatted = f“π的值大约是:{pi:^10.3f}”
print
(formatted)  # 输出:π的值大约是:  3.142

# 场景:直接格式化日期

from
 datetime import datetime
now = datetime.now()
time_str = f“当前时间:{now:%Y-%m-%d %H:%M:%S}”
print
(time_str)  # 输出:当前时间:2023-10-27 14:30:15

为什么是王者?

  1. 1. 可读性最高:变量就在它出现的位置,一目了然。
  2. 2. 性能最好:运行速度比%format()都快。
  3. 3. 功能强大:支持表达式、函数调用和完整的格式化规范。
  4. 4. 写起来最爽:极大地减少了模板代码。

结论:对于绝大多数现代Python项目(3.6+),f-string应是你的首选。

四、特定场景的“专业工具”

4.1 str.join():拼接可迭代对象的“流水线”

这是拼接列表、元组等可迭代对象中大量字符串时,性能最优的选择

# 场景:拼接文件路径片段(尽管有os.path.join,但原理相同)
parts = [“home”, “user”, “documents”, “report.txt”]
# 用‘/’作为连接符

path = “/”.join(parts)
print
(path)  # 输出:home/user/documents/report.txt

# 场景:将单词列表组合成句子

words = [“Python”, “字符串”, “拼接”, “非常”, “有趣”]
sentence = “ ”.join(words) + “。”
print
(sentence)  # 输出:Python 字符串 拼接 非常 有趣。

# 性能对比:为什么join比循环+=快得多?

# 错误示范(性能差):

slow_result = “”
for
 word in words:
    slow_result += word + “ “ # 每次循环都创建新字符串

# 正确示范(性能优):

fast_result = “ ”.join(words) # 一次性计算总长度并分配内存,效率极高

最佳实践:只要你想把一堆字符串用同一个分隔符连起来,第一个想到的就应该是join

4.2 其他专用工具

  • • *操作符:快速重复。
    separator = “-” * 20 # 快速生成分隔线
    print
    (separator) # 输出:--------------------
  • • string.Template:安全地处理用户提供的模板(可防止注入)。
    from string import Template
    t = Template(“尊敬的$customer, 您消费了$$$amount.”) # $$ 转义为$
    safe_msg = t.substitute(customer=“Alice”, amount=100)
    print
    (safe_msg)
  • • print函数中的,:用于快速调试输出多个值,并不生成新字符串
    x, y = 10 20
    print
    (“x的值为:”, x, “y的值为:”, y) # 输出:x的值为: 10 y的值为: 20

五、实战案例:一份成绩单

假设我们有一个学生成绩数据,需要生成格式化的报告。

# 原始数据
students = [
    {“name”: “张三”, “math”: 85, “english”: 92},
    {“name”: “李四”, “math”: 78, “english”: 88},
    {“name”: “王五”, “math”: 95, “english”: 90}
]

# 1. 使用f-string生成每个学生的详情行(可读性最佳)

print
(“=== 学生成绩详情 (f-string) ===”)
for
 stu in students:
    # 直接在字符串中计算平均分并格式化

    report = f“姓名:{stu[‘name’]:<6} 数学:{stu[‘math’]:>3}分 英语:{stu[‘english’]:>3}分 平均:{(stu[‘math’]+stu[‘english’])/2:>5.1f}分”
    print
(report)

# 2. 使用join生成汇总标题(性能最优)

header_items = [“名次”, “姓名”, “总分”]
header = “ | “.join(f“{item:^8}” for item in header_items) # 列表推导式+join+格式化
print
(“\n” + “=”*40)
print
(header)
print
(“=”*40)

# 3. 计算总分并排序

student_totals = [(stu[‘name’], stu[‘math’] + stu[‘english’]) for stu in students]
student_totals.sort(key=lambda x: x[1], reverse=True) # 按总分降序排序

# 4. 生成排行榜

for
 i, (name, total) in enumerate(student_totals, 1):
    # 再次使用f-string格式化输出行

    rank_row = f“{i:^10} | {name:^8} | {total:^8}”
    print
(rank_row)

这段代码展示了如何混合运用多种拼接方式:

  • • 循环内格式化详细数据:使用f-string,因为它最清晰,直接内嵌表达式(stu[‘math’]+stu[‘english’])/2
  • • 生成固定结构的标题:使用**join**,逻辑简洁且高效。
  • • 最终输出:再次使用f-string保证每列对齐美观。

六、如何选择?一张速查表送给你

场景
推荐方法
理由
Python 3.6+, 绝大多数格式化需求f-string
可读性、性能、功能的完美平衡
拼接列表/元组中的大量字符串str.join()
性能远超循环+=,代码意图明确
维护遗留代码 (Python 2.x / 旧3.x)%
或 str.format()
兼容性要求
需要极复杂的格式控制(如表格)str.format():>
等格式化符号有时更直观
处理用户提供的、不安全的模板string.Template
安全性高,防止意外替换
快速调试,打印多个变量print(a, b, c)
方便,但仅用于输出
只是想重复一个字符串N次str * N
语法糖,最简单

最后的叮嘱:

  1. 1. 避免在循环中使用 +或 +=拼接大量字符串,请用 join()
  2. 2. 新项目毫不犹豫地用 f-string,它会让你的代码更干净。
  3. 3. 代码的可读性往往比微小的性能差异更重要(除非你正在处理真正的大数据)。

字符串是程序的“脸面”,好的拼接方式能让代码逻辑清晰,“颜值”飙升。从今天起,试试在代码里多用用f-stringjoin()吧,你会发现编程体验大不相同。

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-02-07 18:29:35 HTTP/2.0 GET : https://f.mffb.com.cn/a/473282.html
  2. 运行时间 : 0.221202s [ 吞吐率:4.52req/s ] 内存消耗:4,463.73kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=05a724e1001f816931b2561c01191531
  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.000967s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001639s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000743s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000662s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001245s ]
  6. SELECT * FROM `set` [ RunTime:0.000588s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001674s ]
  8. SELECT * FROM `article` WHERE `id` = 473282 LIMIT 1 [ RunTime:0.001048s ]
  9. UPDATE `article` SET `lasttime` = 1770460175 WHERE `id` = 473282 [ RunTime:0.034066s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.005799s ]
  11. SELECT * FROM `article` WHERE `id` < 473282 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001263s ]
  12. SELECT * FROM `article` WHERE `id` > 473282 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.001123s ]
  13. SELECT * FROM `article` WHERE `id` < 473282 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.002339s ]
  14. SELECT * FROM `article` WHERE `id` < 473282 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001860s ]
  15. SELECT * FROM `article` WHERE `id` < 473282 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.001858s ]
0.224910s