一个功能丰富的Python学习终端应用,支持智能问答、代码执行、语法高亮和多轮对话。
- 🎯 智能问答 - 专业Python知识解答
- 💻 代码执行 - 实时运行和测试代码
- 🎨 语法高亮 - 美观的代码显示
- 📚 学习指导 - 个性化学习建议
- 💾 会话保存 - 学习进度记录
- 🔧 可配置 - 支持自定义配置
python_learning_assistant/
├── src/ # 源代码目录
│ └── main.py # 主应用程序
├── config/ # 配置文件目录
│ └── config.json # 应用配置
├── docs/ # 文档目录
│ ├── README.md # 项目说明
│ ├── USAGE.md # 使用指南
│ ├── CONFIG.md # 配置说明
│ └── INSTALL.md # 安装指南
├── examples/ # 示例代码目录
│ ├── basic_examples.py # 基础示例
│ └── advanced_examples.py # 高级示例
├── sessions/ # 会话保存目录
├── requirements.txt # 依赖包列表
├── pyproject.toml # 现代化项目配置(推荐)
├── setup.py # 传统安装脚本
├── run.py # 启动脚本
├── test.py # 测试脚本
├── LICENSE # 开源许可证
└── README.md # 项目说明
uv 是现代、快速的 Python 包管理器,提供极速的依赖管理体验。
Windows:
setup.bat
Unix/Linux/macOS:
./setup.sh
-
安装 uv
# Windows powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" # Unix/Linux/macOS curl -LsSf https://astral.sh/uv/install.sh | sh
-
同步依赖
uv sync
-
运行应用
uv run python run.py
优势:
- ⚡ 比 pip 快 10-100 倍
- 🔒 自动依赖锁定确保环境一致
- 📦 自动虚拟环境管理
- 🔧 内置开发工具支持
-
进入项目目录
cd python_learning_assistant
-
创建虚拟环境
python -m venv venv # Windows venv\Scripts\activate # Unix/Linux/macOS source venv/bin/activate
-
安装依赖
pip install openai requests
或者:
pip install -r requirements.txt
-
设置API密钥
# Windows set MOONSHOT_API_KEY=your_api_key_here # Linux/Mac export MOONSHOT_API_KEY=your_api_key_here
-
运行应用
python run.py
如果你的环境支持现代Python打包工具:
# 使用 pyproject.toml(推荐)
pip install -e .
# 或使用传统 setup.py
python setup.py develop
然后可以通过命令行直接启动:
python-learning-assistant
/help
- 显示帮助信息/quit
或/exit
- 退出程序/clear
- 清屏/save
- 保存当前会话/history
- 显示对话历史
/examples
- 显示Python代码示例/topics
- 显示学习主题建议/run <code>
- 执行Python代码
- 直接输入Python问题开始对话
- 代码会自动高亮显示
- 支持多轮对话上下文
- 可以要求执行代码示例
编辑 config/config.json
文件可以自定义应用行为:
{
"model": "kimi-k2-0711-preview",
"temperature": 0.3,
"max_tokens": 2048,
"max_history": 50,
"code_timeout": 10,
"auto_save_sessions": true
}
详细配置说明请参考 CONFIG.md
🐍 Python学习 > 什么是列表推导式?
🤖 助手回答:
列表推导式是Python中一种简洁的创建列表的方法...
📝 代码示例:
┌──────────────────────────────────────────────────┐
│ numbers = [1, 2, 3, 4, 5]
│ squares = [x**2 for x in numbers]
│ print(squares) # [1, 4, 9, 16, 25]
└──────────────────────────────────────────────────┘
🐍 Python学习 > /run for i in range(3): print(f"Hello {i}")
🚀 执行代码:
┌──────────────────────────────────────────────────┐
│ for i in range(3): print(f"Hello {i}")
└──────────────────────────────────────────────────┘
📤 输出结果:
Hello 0
Hello 1
Hello 2
运行测试脚本验证项目完整性:
python test.py
- 在
src/main.py
中添加新的命令处理 - 更新配置文件(如需要)
- 添加相应的文档
编辑 config/config.json
中的 system_prompt
字段来自定义AI助手的行为。
# 运行基础示例
python examples/basic_examples.py
# 运行高级示例
python examples/advanced_examples.py
- Python 3.7 或更高版本
- 网络连接(用于AI API调用)
- 支持ANSI颜色的终端(用于语法高亮)
本项目使用Moonshot AI的API服务。你需要:
- 注册Moonshot AI账户
- 获取API密钥
- 设置环境变量
MOONSHOT_API_KEY
-
依赖安装失败
pip install --upgrade pip pip install -r requirements.txt --force-reinstall
-
API密钥未设置
echo $MOONSHOT_API_KEY # Linux/Mac echo %MOONSHOT_API_KEY% # Windows
-
编码问题
- 确保终端支持UTF-8编码
- Windows用户可能需要使用Windows Terminal
- 查看 使用指南
- 运行
python test.py
进行诊断 - 检查项目Issue页面
MIT License - 详见 LICENSE 文件
欢迎提交Issue和Pull Request!
- 支持更多AI模型
- 图形界面版本
- 插件系统
- 多语言支持
- 代码补全功能
如有问题或建议,请提交Issue。