Agent 学习前的准备 —— Python 语法篇
# Agent 学习前的准备 —— Python 语法篇 ## 前言 随着大模型(LLM)和 Agent 技术的发展,越来越多开发者开始接触 AI Agent 的开发与应用。无论是使用 LangChain、AutoGen、CrewAI,还是 OpenAI Agent SDK,本质上都离不开 Python 语言。 对于准备学习 Agent 的同学来说,不一定需要成为 Python 专家,但至少需要掌握常用语法、面向对象编程思想以及常见的数据结构操作。本文将从 Agent 开发的实际需求出发,梳理学习 Agent 前必须掌握的 Python 基础知识。 --- # 一、为什么学习 Agent 要先学 Python 当前主流 Agent 框架几乎全部基于 Python 生态: - LangChain - LangGraph - AutoGen - CrewAI - OpenAI SDK - LlamaIndex Agent 的本质其实就是: ```python 用户输入 ↓ LLM推理 ↓ 工具调用 ↓ 结果处理 ↓ 输出结果整个过程中需要编写大量 Python 代码:
- 定义 Agent
- 编写 Tool
- 调用 API
- 处理 JSON 数据
- 操作文件
- 构建工作流
因此,掌握 Python 基础语法是学习 Agent 的前提。
二、变量与数据类型
2.1 变量定义
Python 不需要声明变量类型。
name="Tom"age=20score=95.5查看变量类型:
print(type(name))print(type(age))输出:
<class'str'><class'int'>2.2 常见数据类型
| 类型 | 说明 |
|---|---|
| int | 整数 |
| float | 浮点数 |
| str | 字符串 |
| bool | 布尔值 |
| list | 列表 |
| tuple | 元组 |
| dict | 字典 |
| set | 集合 |
示例:
num=100price=9.99name="Agent"flag=True三、字符串操作
Agent 开发中,大量内容都是文本处理。
例如:
- Prompt
- 用户问题
- LLM返回结果
因此字符串操作非常重要。
3.1 字符串拼接
name="GPT"text="Hello "+nameprint(text)输出:
Hello GPT3.2 f-string
推荐使用。
name="GPT"age=1print(f"{name}已经运行{age}年")输出:
GPT已经运行1年3.3 字符串常用方法
text="hello world"print(text.upper())print(text.lower())print(text.replace("world","agent"))输出:
HELLO WORLD hello world hello agent四、列表 List
列表是 Agent 开发中最常见的数据结构之一。
4.1 创建列表
tools=["search","calculator","weather"]4.2 访问元素
print(tools[0])输出:
search4.3 添加元素
tools.append("database")结果:
["search","calculator","weather","database"]4.4 遍历列表
fortoolintools:print(tool)五、字典 Dict
字典在 Agent 中出现频率极高。
因为:
- API 返回 JSON
- Tool 参数
- Agent 状态
本质上都是字典。
5.1 创建字典
user={"name":"Tom","age":20}5.2 获取数据
print(user["name"])输出:
Tom5.3 修改数据
user["age"]=215.4 遍历字典
forkey,valueinuser.items():print(key,value)六、条件判断
Agent 经常需要根据模型输出执行不同逻辑。
if语句
score=90ifscore>=60:print("及格")else:print("不及格")多条件判断
score=85ifscore>=90:print("优秀")elifscore>=80:print("良好")else:print("一般")七、循环语句
for循环
foriinrange(5):print(i)输出:
01234while循环
count=0whilecount<5:print(count)count+=1八、函数
Agent 项目通常由大量函数组成。
定义函数
defsay_hello():print("Hello Agent")调用:
say_hello()带参数函数
defadd(a,b):returna+b result=add(1,2)print(result)输出:
3九、面向对象编程
几乎所有 Agent 框架都采用面向对象设计。
例如:
agent.run()tool.execute()memory.save()因此需要掌握类与对象。
9.1 定义类
classAgent:defrun(self):print("Agent Running")9.2 创建对象
agent=Agent()agent.run()输出:
Agent Running9.3 构造函数
classAgent:def__init__(self,name):self.name=namedefrun(self):print(self.name)使用:
agent=Agent("Research Agent")agent.run()输出:
Research Agent十、文件读写
Agent 经常需要:
- 保存日志
- 保存记忆
- 保存结果
写文件
withopen("result.txt","w")asf:f.write("Hello Agent")读文件
withopen("result.txt","r")asf:content=f.read()print(content)十一、异常处理
调用大模型接口时经常发生:
- 网络异常
- API异常
- 数据格式异常
因此必须掌握异常处理。
try:num=10/0exceptExceptionase:print(e)输出:
division by zero十二、JSON处理
Agent 与外部系统交互时大量使用 JSON。
Python对象转JSON
importjson data={"name":"agent","version":"1.0"}json_str=json.dumps(data)print(json_str)JSON转Python对象
importjson json_str='{"name":"agent"}'data=json.loads(json_str)print(data["name"])输出:
agent十三、模块与包
导入模块
importmathprint(math.sqrt(16))输出:
4.0导入指定内容
frommathimportsqrtprint(sqrt(16))十四、学习 Agent 必须掌握的 Python 能力
建议至少掌握以下内容:
✅ 基础语法
- 变量
- 数据类型
- 条件判断
- 循环
✅ 数据结构
- List
- Dict
- Set
✅ 函数
- 参数
- 返回值
- Lambda
✅ 面向对象
- class
- 对象
- 继承
- 多态
✅ 文件操作
- txt
- csv
- json
✅ 异常处理
- try
- except
✅ 模块管理
- import
- pip
十五、下一步学习路线
完成 Python 基础后,可以按照以下顺序学习 Agent:
Python基础 ↓ Python面向对象 ↓ HTTP请求(requests) ↓ API调用 ↓ Prompt Engineering ↓ OpenAI SDK ↓ LangChain ↓ LangGraph ↓ RAG ↓ Multi-Agent推荐学习周期:
| 阶段 | 时间 |
|---|---|
| Python基础 | 1周 |
| Python面向对象 | 2天 |
| API调用 | 2天 |
| OpenAI SDK | 2天 |
| LangChain | 1周 |
| LangGraph | 1周 |
| Agent项目实战 | 持续学习 |
总结
Agent 并不是一个全新的编程语言或开发模式,而是在大模型基础上构建的智能应用框架。学习 Agent 的第一步并非研究复杂的工作流或框架源码,而是扎实掌握 Python 基础能力。
对于初学者而言,重点掌握字符串处理、列表与字典操作、函数封装、面向对象编程、文件读写以及 JSON 数据处理即可满足绝大多数 Agent 项目的开发需求。打好这些基础后,再学习 OpenAI SDK、LangChain、LangGraph 等框架,会更加轻松高效。
