081_ai编程_最佳实践_ai辅助编程_提出要求_解决问题
ai编程最佳实践_ai辅助编程_提出要求_解决问题 回忆上次内容
-
上次输出了
-
随机数字 密码
添加图片注释,不超过 140 字(可选)
-
这下知道
-
平时收到的验证码
-
怎么来的了
添加图片注释,不超过 140 字(可选)
-
计算机中 没有所谓的 真·随机
-
一般都是 依靠时间为变量 得到的 随机
-
AI 能如何 辅助我们编程呢?
猫屎咖啡
-
有这么一个场景
-
在Java岛上
-
麝香猫 吃了 咖啡豆
添加图片注释,不超过 140 字(可选)
-
咖啡果肉 麝香猫 能消化
-
咖啡果核 消化不了
-
完整排出
购买
-
刚排出的 水分多
-
经过清洗(会降低风味)
-
晾晒 或 烘干
-
去壳 烘焙
-
得到 Kopi(咖啡) Luwak(猫)
-
30,0000 印尼盾 / 公斤
添加图片注释,不超过 140 字(可选)
-
我要 做个程序
-
把购买的 斤数
-
换算成 人民币金额
-
怎么 问ai?
无用信息
-
红色的 部分
-
是 无关描述
-
对 编程这个事 没用
-
可以 删除
添加图片注释,不超过 140 字(可选)
-
信息 分两种
-
第一种 对 编程目标 有用
-
第二种 对 编程目标 没用
-
我们 首先 需要 明白
-
哪些 能落实到 代码上
-
哪些 没有意义
简化之后
-
精简了 提示词
添加图片注释,不超过 140 字(可选)
-
输入的部分
-
没有进行异常处理
-
这需要 我们大脑中 先有概念
-
之前学的 try-except-else-finally 结构
-
制作相关 容错处理
-
增强 代码健壮性
结果
-
直接提要求
添加图片注释,不超过 140 字(可选)
-
try 的 第一句
-
对应 ValueError 就得了
-
目前是 一try到底
-
这需要 我们了解 try语句的作用
-
能够 理解 和 安排
-
代码的 先后次序
尝试失败
-
嘴上对我进行夸奖
添加图片注释,不超过 140 字(可选)
-
try的作用域 没有改变
-
还是 一try到底
-
把程序 分成两步
-
录入购买斤数
-
根据斤数得到人民币金额
斤数
-
先完成 第1步
-
录入 斤数
添加图片注释,不超过 140 字(可选)
-
目前代码 可行
-
需要 我们来做判定
-
确认保留 当前的代码
-
先跟ai 肯定 目前的状态
-
刚做的这个 很好
-
ValueError 能 重新输入 了
继续增加功能
-
在此基础上 追加一句
-
负数和零 也要 重新输入
添加图片注释,不超过 140 字(可选)
-
第一部分 录入功能 完成
-
准备 第2步 转化工作
-
从 猫屎斤数
-
到 公斤数
-
再到 印尼盾
-
最后到 人民币
继续提要求
-
还是 先巩固战果
-
目前 已经成型的 部分
-
在此基础之上
-
添加新的代码
添加图片注释,不超过 140 字(可选)
# 定义印尼盾对人民币的汇率,这里只是示例,需按实际调整 exchange_rate = 0.00045 while 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}印尼盾,折合人民币约为{price_cny}元。") 运行结果
添加图片注释,不超过 140 字(可选)
-
常规情况 问题不大
添加图片注释,不超过 140 字(可选)
-
需要在最终部分
-
保留两位小数
继续提要求
-
还是要 先巩固已有成果
添加图片注释,不超过 140 字(可选)
# 定义印尼盾对人民币的汇率,这里只是示例,需按实际调整 exchange_rate = 0.00045 while 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}元。")
-
不是 四舍五入
-
而是 向上取整 保留两位小数
最终代码
添加图片注释,不超过 140 字(可选)
-
最终代码 已经完全
-
符合 目标要求
稳步推进
-
这次使用ai 有3个结论
-
和程序逻辑无关的 没必要说
-
复杂的流程
-
不期待一次成功
-
一次说不清
-
可以 拆解成 若干步骤
-
单一步骤 用简单 话语描述清楚
-
对自己、对ai都好
-
对于已经完成的代码
-
能够确认 他可行👍
-
并且 巩固战果
-
再 向下 继续编码
-
小步快跑 快速迭代
添加图片注释,不超过 140 字(可选)
-
ai时代的编程
-
需要先整理好 自己的需求
-
再将需求 合理拆分成 可以看到战果的 小目标
-
然后 逐步巩固战果
-
并 向前推进
-
在此过程中
-
人和ai 是 如何分工的呢?
总结
-
人 需要
-
明确 目标
-
拆分 步骤
-
确认 结果
-
向前 推进
-
ai 负责
-
落实 代码
-
解释 含义
-
提供 建议
添加图片注释,不超过 140 字(可选)
-
ai时代
-
编程 不会 被终结
-
一切 都会变成 编程