使用cursor完成python天气查询工具项目:初始化虚拟环境、ai生成主程序、加载api密钥、编写单元测试、打包为单文件可执行程序,全程依赖cursor的ai辅助实现。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

用Cursor完成一个Python实战项目案例,需要从创建项目结构开始,到编写核心逻辑、运行调试、最终生成可执行文件,全程依赖Cursor的AI辅助能力而非手动查文档。
初始化项目并配置环境
打开Cursor → 新建文件夹作为项目根目录 → 右键该文件夹 → 选择“Open in Cursor”。【必须在项目根目录下打开,否则AI无法识别上下文范围】
按 Cmd+L(Mac)或 Ctrl+L(Win)唤出命令面板 → 输入“Create Python Environment” → 回车执行 → 等待虚拟环境自动创建完成。这一步会生成 .venv 文件夹和 requirements.txt 初始文件。
在终端中输入 python --version 验证解释器版本;若显示系统默认版本而非 .venv 中的版本,说明未自动激活虚拟环境——此时需手动运行 source .venv/bin/activate(Mac/Linux)或 .venv\Scripts\activate.bat(Windows)。
生成主程序骨架
新建文件 main.py → 在光标处输入自然语言提示:“写一个命令行天气查询工具,接收城市名参数,调用免费API返回温度和天气描述,支持--help选项”。
按下 Cmd+K(Mac)或 Ctrl+K(Win)触发AI补全 → 等待Cursor生成完整可运行代码 → 检查是否包含 argparse 解析参数、requests 发起HTTP请求、try-except 处理网络异常。若缺失异常处理,直接选中对应函数 → 再次按 Cmd+K → 输入“添加超时和错误重试逻辑”。
这一步操作起来很简单,直接把生成的代码保留即可,但注意删掉示例中的硬编码API key占位符,换成环境变量读取:os.getenv("WEATHER_API_KEY")。
快速接入真实API并测试
方法一:使用 OpenWeatherMap 免费API
访问 openweathermap.org/api → 注册账号 → 获取 API Key → 在项目根目录创建 .env 文件 → 写入 WEATHER_API_KEY=your_actual_key_here。
方法二:用Cursor自动补全环境变量加载逻辑
让 macOS 自动化像说话一样简单 —— 用代码控制你的 Mac,无需学习 AppleScript 系统要求 macOS 14+ (Sonoma) Python 3.9+ 需要开启:辅助功能 + 屏幕录制权限
在 main.py 开头空白处输入“用python-dotenv安全加载.env文件”,按 Cmd+K → AI会插入 load_dotenv() 调用和 import 语句。【不加这行,程序永远读不到你的API Key】
保存所有文件 → 终端执行 python main.py 北京 → 观察是否返回类似“22°C,多云”的结果。若报错 ConnectionError,检查网络代理设置或API Key是否复制完整(结尾无空格)。
添加单元测试并一键运行
第一步:在项目根目录新建 tests/ 文件夹 → 创建 test_main.py。
第二步:在 test_main.py 中输入“为main.py中的get_weather函数写pytest测试用例,覆盖正常响应、HTTP错误、网络超时三种情况”。
第三步:按 Cmd+K → 等待AI生成含 mock.patch 的测试代码 → 保存后,在终端运行 pytest tests/ --verbose。
第四步:若测试失败,将失败信息复制进Cursor聊天框 → 输入“为什么test_weather_timeout抛出AttributeError”,AI会定位到 patch 路径错误并给出修复建议。
打包成独立可执行文件
在终端中运行 pip install pyinstaller → 等待安装完成。
执行 pyinstaller --onefile --name weather-tool main.py → 输出文件位于 dist/weather-tool(Mac/Linux)或 dist\weather-tool.exe(Windows)。
双击运行生成的可执行文件,传入城市名参数验证功能完整性。这一步不需要任何代码修改,纯命令行操作,但注意 --onefile 参数不可省略,否则会生成整个文件夹而非单个二进制文件。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!










