AI编程方法第一弹:基本提问方法

部署运行你感兴趣的模型镜像

AI编程第一弹:

我们从一个最简单的Python程序开始。

功能是让用户输入两个数的加法计算式,如“1+2=”,并输出最终的加法计算式及其结果。

大家可以使用任何一款AI编程工具进行,这是常见的一种结果:

def main():
    # 提示用户输入加法计算式
    user_input = input("请输入一个加法计算式(例如 '1+2'):")
    
    try:
        # 尝试解析输入的计算式
        left_operand, operator, right_operand = user_input.replace(" ", "").split('+')
        
        # 将操作数转换为整数
        left_operand = int(left_operand)
        right_operand = int(right_operand)
        
        # 计算结果
        result = left_operand + right_operand
        
        # 输出计算式及其结果
        print(f"计算式: {user_input} = {result}")
    
    except ValueError:
        # 捕获转换错误,并提示用户输入有效的数字
        print("输入无效,请确保输入的是有效的数字加法计算式。")
    
    except Exception as e:
        # 捕获其他可能的异常,并输出错误信息
        print(f"发生错误: {e}")

if __name__ == "__main__":
    main()

该代码并无错误,但是作为初学者,很可能并不需要考虑诸如main函数、异常输入处理或者其他更为复杂的表达,也需要合理的控制语句数量,甚至代码使用的功能和模块等,这就要求我们在提问时要遵守第一个基本准则,即:

  1. 提问要尽可能详细,就像对要帮助你办事的人说话一样,尽可能详细;
  2. 可以适当举例,给出你希望的样子;
  3. 给出必要的要求,比如代码规模,难度等等;
  4. 给出不希望出现的约束,比如不希望使用什么函数等。

按照这个方法,可以得到更为合理的提问式:

让用户输入两个数的加法计算式,如“1+2”,并输出最终的加法计算式及其结果,如“1+2=3”,请只使用字符串自带函数实现。请不必考虑特殊错误的异常处理,并且控制代码为10以内,不使用任何条件判断和循环等语句。

结果如:

strs = input('请输入加法计算式:')
num1, num2 = strs.split('+')
num1, num2 = int(num1), int(num2)
print(strs + '=' + str(num1 + num2))

再如如果问题有所变化,要求让用户输入两个数的加法计算式,如“1+2=”,并输出最终的加法计算式及其结果,如“1+2=3”。此时会有多种不同的解决方法,直接提问可能会得到自己并不想要的结果,那可以考虑更为精确的提问约束,如:

让用户输入两个数的加法计算式,如“1+2=”,并输出最终的加法计算式及其结果,如“1+2=3”,请只使用字符串切片实现。请不必考虑特殊错误的异常处理,并且控制代码为10以内,不使用任何条件判断和循环等语句。

input_str = input("请输入加法计算式(如'123+456='):")

# 找到'+'和'='的位置
plus_index = input_str.index('+')
equal_index = input_str.index('=')

# 提取两个数字字符串
num1_str = input_str[0:plus_index]
num2_str = input_str[plus_index+1:equal_index]

# 将字符串转换为整数并计算和
result = int(num1_str) + int(num2_str)

# 输出结果
print(f"{input_str}{result}")

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

leeshuqing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值