Python小计-列表推导式

10 阅读1分钟

列表推导式解析

刚入门python的时候,总是遇到一些列表推导式 看见很头疼,今天就来逐步解析一下

原始代码

memory_content = "\n".join([f"- {doc.page_content}" for doc in results])

步骤一

  • results是个列表
  • 列表中的每个元素doc是一个对象
  • 每个doc对象都有一个属性page_content
results = [doc1, doc2, doc3]
doc1.page_content = "这是第一段内容"
doc2.page_content = "这是第二段内容"
doc3.page_content = "这是第三段内容"

步骤二

[f"- {doc.page_content}" for doc in results] 列表推导式

  • 遍历results中的每个doc对象
  • 对每个doc.page_content 前面加上 "- "
  • 生成一个新的字符串列表
["- 这是第一段内容", "- 这是第二段内容", "- 这是第三段内容"]

步骤三

"\n".join(....)

  • 用换行符\n 将列表中的所有字符串连接起来,形成一个字符串
"- 这是第一段内容\n- 这是第二段内容\n- 这是第三段内容"

步骤四

赋值给memory_content