当前位置: 首页 > wzjs >正文

济南做外贸的网站公司吗杭州网站关键词排名

济南做外贸的网站公司吗,杭州网站关键词排名,网站建设专业开发公司,外贸批发网站建设虽然AI编程工具可以提供快速的代码实现,但是在方法实现上往往并不完全符合我们的预期,甚至可能会使用一些非常原始低效的方式来完成。因此,合理的引导提示AI编程工具进行编程,才能写出更为合理高效的代码,这在一定程度…

虽然AI编程工具可以提供快速的代码实现,但是在方法实现上往往并不完全符合我们的预期,甚至可能会使用一些非常原始低效的方式来完成。因此,合理的引导提示AI编程工具进行编程,才能写出更为合理高效的代码,这在一定程度上也说明AI编程并不意味着编程人员无需再学习编程,相反,熟练的编程人员才会更好的引导AI快速实现高效的代码。

下面以一个例子来做说明。比如基于NumPy编写代码,允许用户连续输入一组数据,以0结束,找到平均值最大的连续三个数值,比如输入为:
1,2,3,37,56,23,17,20,30,0 这几个数
输出为:
37,56,23

首先进行的AI编程提示为:

允许用户连续输入一组数据,以0结束,找到平均值最大的连续三个数值,比如输入为:
1,2,3,37,56,23,17,20,30,0 这几个数
输出为:
37,56,23(请使用Python和NumPy完成)

得到的初始代码可能为:

import numpy as npdef find_max_avg_triplet():# 读取输入数据,直到遇到0为止input_data = []while True:num = int(input("请输入一个数字(输入0结束): "))if num == 0:breakinput_data.append(num)if len(input_data) < 3:print("输入的数字不足三个,无法计算。")return# 转换为NumPy数组arr = np.array(input_data)# 初始化最大平均值和对应的索引max_avg = -np.infmax_indices = (0, 1, 2)# 滑动窗口计算每个连续三个数的平均值for i in range(len(arr) - 2):current_triplet = arr[i:i+3]current_avg = np.mean(current_triplet)if current_avg > max_avg:max_avg = current_avgmax_indices = (i, i+1, i+2)# 输出结果result = arr[max_indices[0]:max_indices[2]+1]print("平均值最大的连续三个数值是:", ','.join(map(str, result)))# 调用函数
find_max_avg_triplet()

该代码虽然功能正确,但是在实现上非常原始,没有充分利用NumPy序列的集合式处理优势。如果觉得代码啰嗦,简单的限制代码函数并不一定能实现预期目标。如再次AI编程提示为:

压缩代码控制在10行内

得到的代码为:

import numpy as npdef find_max_avg_triplet():input_data = []while (num := int(input("请输入一个数字(输入0结束): "))) != 0: input_data.append(num)if len(input_data) < 3: return print("输入的数字不足三个,无法计算。")arr = np.array(input_data)max_avg, max_indices = -np.inf, (0, 1, 2)for i in range(len(arr) - 2):if (current_avg := np.mean(arr[i:i+3])) > max_avg: max_avg, max_indices = current_avg, (i, i+1, i+2)print("平均值最大的连续三个数值是:", ','.join(map(str, arr[max_indices[0]:max_indices[2]+1])))find_max_avg_triplet()

该代码相较于以前,确实已有改进,采用了滑窗切片的for循环实现了有效的简化处理,但是其自动去除了连续输入的功能,后期还需要自己替换上去。但是,其核心处理序列的代码是否能更突出NumPy编程特点?

此时,如果自己对该类序列处理有经验,可以明确的引导AI编程工具按照自己指定的思路来完成,如AI编程提示为:

可以考虑不要使用循环,利用每三个切片的滑窗,通过集合式整体处理获取对应每三个切片元素的平均值形成一个array,再利用寻找最大值对应的序号来确定原始三个元素的内容

得到的代码为:

import numpy as npdef find_max_average_triplet(arr):# 将输入转换为numpy数组以便高效处理arr = np.array(arr)# 计算滑动窗口的平均值# 使用卷积来高效计算滑动窗口的和,然后除以窗口大小window_size = 3# 使用valid模式,确保窗口不超出边界sums = np.convolve(arr, np.ones(window_size), mode='valid')averages = sums / window_size# 找到最大平均值的索引max_avg_index = np.argmax(averages)# 对应的原始三个元素triplet = arr[max_avg_index:max_avg_index + window_size]return triplet, averages[max_avg_index]# 示例使用
if __name__ == "__main__":example_array = [1, 3, 5, 7, 9, 2, 4, 6, 8]triplet, max_avg = find_max_average_triplet(example_array)print(f"原始数组: {example_array}")print(f"平均值最大的三个连续元素: {triplet}, 平均值: {max_avg}")

如果觉得不必如此复杂,可以要求简化不必要的语句,再次增加调整提示:

请不要使用函数,去除main代码

得到的代码为:

import numpy as np# 示例数组
example_array = [1, 3, 5, 7, 9, 2, 4, 6, 8]# 将输入转换为numpy数组以便高效处理
arr = np.array(example_array)# 计算滑动窗口的平均值
window_size = 3
sums = np.convolve(arr, np.ones(window_size), mode='valid')
averages = sums / window_size# 找到最大平均值的索引
max_avg_index = np.argmax(averages)# 对应的原始三个元素
triplet = arr[max_avg_index:max_avg_index + window_size]# 输出结果
print(f"原始数组: {example_array}")
print(f"平均值最大的三个连续元素: {triplet}, 平均值: {averages[max_avg_index]}")

这次我们会发现AI灵巧的使用了一个NumPy的卷积函数convolve,自动实现了for循环的滑窗切片,具体对该函数的了解可以直接询问AI。

即使此时不想使用这个convolve函数,也可以再次要求AI编程:

能否不使用convolve函数实现相同的效果

得到的代码为:

import numpy as np# 示例数组
example_array = [1, 3, 5, 7, 9, 2, 4, 6, 8]# 将输入转换为numpy数组以便高效处理
arr = np.array(example_array)# 窗口大小
window_size = 3# 使用列表推导式初始化滑动窗口的和数组
sums = [np.sum(arr[i:i + window_size]) for i in range(len(arr) - window_size + 1)]# 计算平均值
averages = np.array(sums) / window_size# 找到最大平均值的索引
max_avg_index = np.argmax(averages)# 对应的原始三个元素
triplet = arr[max_avg_index:max_avg_index + window_size]# 输出结果
print(f"原始数组: {example_array}")
print(f"平均值最大的三个连续元素: {triplet}, 平均值: {averages[max_avg_index]}")

到此,相关代码已经非常简洁,使用的函数也比较常见,可以符合绝大多数普通练习的要求。从中可以看出,编程人员的准确引导是初始AI代码质量获得提升的关键一步。

http://www.dtcms.com/wzjs/498235.html

相关文章:

  • 郑州网站seo多少钱优化游戏的软件
  • 做网站中心百度提交网站收录入口
  • 独立商城网站建设微信公众号怎么做文章推广
  • 石家庄 网站 科技windows优化大师功能
  • 网站开发设计文档西安百度推广开户
  • 苹果风格网站百度网址安全检测中心
  • 山西太原门户网站开发公司短视频营销成功的案例
  • 做网站销售需要注意的沪深300指数怎么买
  • 做网站和编程有关系吗武汉seo广告推广
  • 如何自己做软件网站百度免费推广
  • 大连做企业网站的公司最近的电脑培训学校
  • 建设执业资格注册中心网站2022年最火的新闻摘抄
  • 扬州工程信息网站百度seo工作室
  • html5软件seo优化排名百度教程
  • 郑州营销型网站设计买链接网
  • 网站模板下载工具优质网站
  • 轻松网站建设网络销售入门基本知识
  • 哪里可以做产品购物网站女教师网课入侵录屏冫
  • wordpress提货下载成都网站建设方案优化
  • 大连模板网站制作哪家好seo网站优化教程
  • 医院网站推广渠道安全优化大师
  • 番禺手机网站制作推广交换友情链接的要求有
  • 提供常州网站推广给公司做网站的公司
  • 关于建设校园网站的毕业论文产品市场推广计划书
  • 设计衣服网站网站推广技巧有哪些
  • 做网站南京成年s8视频加密线路
  • 关于做网站的外语文献北京seoqq群
  • 泡泡网seo教程视频论坛
  • 淘宝网站咋做阿里指数官网
  • 网站建设经费预算包括哪些广州百度