[oeasy]python081_ai编程最佳实践_ai辅助编程_提出要求_解决问题

overmind1980 2025-03-31 07:50:54

ai编程最佳实践_ai辅助编程_提出要求_解决问题回忆上次内容

上次输出了

随机数字 密码

这下知道

平时收到的验证码

怎么来的了

计算机中 没有所谓的 真·随机

一般都是 依靠时间为变量 得到的 随机

AI 能如何 辅助我们编程呢?

猫屎咖啡

有这么一个场景

在Java岛上

麝香猫 吃了 咖啡豆

咖啡果肉 麝香猫 能消化

咖啡果核 消化不了

完整排出

购买

刚排出的 水分多

经过清洗(会降低风味)

晾晒 或 烘干

去壳 烘焙

得到  Kopi(咖啡) Luwak(猫)

30,0000 印尼盾 / 公斤

我要 做个程序

把购买的 斤数

换算成 人民币金额

怎么 问ai?

无用信息

红色的 部分

是 无关描述

对 编程这个事 没用

可以 删除

信息 分两种

第一种 对 编程目标 有用

第二种 对 编程目标 没用

我们 首先 需要 明白

哪些 能落实到 代码上

哪些 没有意义

简化之后

精简了 提示词

输入的部分

没有进行异常处理

这需要 我们大脑中 先有概念

之前学的 try-except-else-finally 结构

制作相关 容错处理

增强 代码健壮性

结果

直接提要求

try 的 第一句

对应 ValueError 就得了

目前是 一try到底

这需要 我们了解 try语句的作用

能够 理解 和 安排

代码的 先后次序

尝试失败

嘴上对我进行夸奖

try的作用域 没有改变

还是 一try到底

把程序 分成两步

录入购买斤数

根据斤数得到人民币金额

斤数

先完成 第1步

录入 斤数

目前代码 可行

需要 我们来做判定

确认保留 当前的代码

先跟ai 肯定 目前的状态

刚做的这个 很好

ValueError 能 重新输入 了

继续增加功能

在此基础上 追加一句

负数和零 也要 重新输入

第一部分 录入功能 完成

准备 第2步 转化工作

从 猫屎斤数

到 公斤数

再到 印尼盾

最后到 人民币

继续提要求

还是 先巩固战果

目前 已经成型的 部分

在此基础之上

添加新的代码

# 定义印尼盾对人民币的汇率,这里只是示例,需按实际调整exchange_rate = 0.00045while True:    try:        weight = float(input("请输入猫屎咖啡的购买斤数: "))        if weight <= 0:            print("输入的斤数不能为负数或 0,请重新输入。")        else:            print(f"你输入的购买斤数是: {weight} 斤")            break    except ValueError:        print("输入的不是有效的数字,请重新输入。")# 将斤数转换为公斤数,1公斤 = 2斤weight_kg = weight / 2# 计算对应的印尼盾价格,每公斤30万印尼盾price_idr = weight_kg * 300000# 计算对应的人民币价格price_cny = price_idr * exchange_rateprint(f"购买{weight}斤猫屎咖啡,共{weight_kg}公斤,需要{price_idr}印尼盾,折合人民币约为{price_cny}元。")

运行结果

常规情况 问题不大

需要在最终部分

保留两位小数

继续提要求

还是要 先巩固已有成果

# 定义印尼盾对人民币的汇率,这里只是示例,需按实际调整exchange_rate = 0.00045while True:    try:        weight = float(input("请输入猫屎咖啡的购买斤数: "))        if weight <= 0:            print("输入的斤数不能为负数或 0,请重新输入。")        else:            print(f"你输入的购买斤数是: {weight} 斤")            break    except ValueError:        print("输入的不是有效的数字,请重新输入。")# 将斤数转换为公斤数,1公斤 = 2斤weight_kg = weight / 2# 计算对应的印尼盾价格,每公斤30万印尼盾price_idr = weight_kg * 300000# 计算对应的人民币价格price_cny = price_idr * exchange_rate# 使用字符串格式化保留两位小数print(f"购买{weight}斤猫屎咖啡,共{weight_kg}公斤,需要{price_idr:.2f}印尼盾,折合人民币约为{price_cny:.2f}元。")

不是 四舍五入

而是 向上取整 保留两位小数

最终代码

最终代码 已经完全

符合 目标要求

稳步推进

这次使用ai 有3个结论

能够确认 他可行👍

并且 巩固战果

再 向下 继续编码

小步快跑 快速迭代

不期待一次成功

一次说不清

单一步骤 用简单 话语描述清楚

对自己、对ai都好

可以 拆解成 若干步骤

和程序逻辑无关的 没必要说

复杂的流程

对于已经完成的代码

ai时代的编程

需要先整理好 自己的需求

再将需求 合理拆分成 可以看到战果的 小目标

然后 逐步巩固战果

并 向前推进

在此过程中

人和ai 是 如何分工的呢?

总结

人 需要

明确 目标

拆分 步骤

确认 结果

向前 推进

ai 负责

落实 代码

解释 含义

提供 建议

ai时代

编程 不会 被终结

一切 都会变成 编程

总结一下本章内容吧~ 👋

蓝桥->https://www.lanqiao.cn/courses/3584

github->https://github.com/overmind1980/oeasy-python-tutorial

gitee->https://gitee.com/overmind1980/oeasypython

0 阅读:0
overmind1980

overmind1980

此用户有点懒,还没有正式介绍自己