上次输出了
随机数字 密码
这下知道
平时收到的验证码
怎么来的了
计算机中 没有所谓的 真·随机
一般都是 依靠时间为变量 得到的 随机
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