循环遍历吗?问问第七题和第九题代码具体怎么运行的

img

img


循环遍历吗?问问第七题和第九题代码具体怎么运行的?循环遍历吗?问问第七题和第九题代码具体怎么运行的循环遍历吗?问问第七题和第九题代码具体怎么运行的

都是考察列表的循环:第7题,循环列表letter,当循环到第4个元素D时,if那里的判断成立,所以删除了D,此时列表元素为A B C D D ,此时继续循环第5个元素,此时第五个元素为D,if那里的判断成立,所以删除了D,此时列表元素为A B C D。此时继续循环第6个元素,但是列表的长度为4,循环结束。最终结果为:A B C D
第9题:第一个for循环依次循环PYTHON中的一个个字母,第二个for循环,循环2次,每次打印输出一个字母,也就是会打印一个字母2次。当字母为H时,通过break退出第二个循环,此时不再执行第二个循环,也是就是H只打印输出了1次,但是第一个循环没有结束,还是会继续执行第一个循环,接着又是第2个循环。还是会接着打印一个字母两次,最后的结果就是所有字母都打印2次,除了H只打印了1次

第七题:

  1. 前三次循环不满足if条件,此时数组中执行到‘C’,索引下标对应是2;
  2. 执行第四次循环时,判断是否等于D,满足条件执行列表letter的删除这个元素, -- 删除元素后,后面的元素会往前移动, -- 此时列表为 ['A','B','C','D','D'],索引下标是3;
  3. 执行下一次循环,索引下标+1变成4,对应的是 ['A','B','C','D','D']最后一个'D',满足if条件删除此元素,得到最终的结果['A','B','C','D']

第九题没啥好讲的吧,两个for循环,里面的循环执行两次,也就是字母打印两次,唯一就是这个if判断+break,也只是跳出一层循环,少写个h,最终结果PPYYTTHOONN

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7800270
  • 这篇博客也不错, 你可以看下采用动态权重和概率扰动策略改进的灰狼优化算法-附代码
  • 除此之外, 这篇博客: 梯度下降算法中的几点答疑:迭代到什么时候停止?为什么要求导?几个式子之间是什么关系?j是干什么的?中的 一、准备知识记录 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
    1. 梯度的方向是函数在给定点上升最快的方向,那么梯度的反方向就是函数在给定点下降最快的方向,
    2. α:学习率或者步长,意味着我们可以通过α来控制每一步走的距离,以保证不要步子跨的太大,其实就是不要走太快,错过了最低点。同时也要保证不要走的太慢,导浪费跑程序的人的时间。所以α的选择在梯度下降法中往往是很重要的!

    总之:α不能太大也不能太小,太小的话,可能导致迟迟走不到最低点,太大的话,会导致错过最低点!

        3. 梯度前加一个负号,就意味着朝着梯度相反的方向前进

  • 您还可以看一下 孙玖祥老师的图解数据结构与算法课程中的 背包问题代码实现小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    对于第七题和第九题的代码,没有明确提及使用循环遍历实现还是其他方法实现。因此,我无法确定它们是否使用了循环遍历。以下分别对两题的代码执行过程进行简单说明:

    第七题的代码是用Python解析豆瓣小组讨论回复的内容,然后统计每个用户的回复数并生成csv文件。执行过程主要包括以下几步:

    1.发送请求,对于豆瓣小组url地址发送请求; 2.获取数据,获取网页源代码 <有很多数据内容>; 3.解析数据,使用BeautifulSoup对源代码进行解析处理; 4.提取需要的数据,提取用户评论的内容和用户的昵称; 5.统计每个用户的回复数,并保存到csv文件中。

    第九题的代码是计算100的阶乘。主要执行过程如下:

    1.定义函数convertIntToList将整型数字n转化为列表nArr; 2.定义函数times计算一个数组aArr乘以另一个数组bArr的结果,返回result数组。 3.定义函数factorial(n),将整型数n!计算出来。主要执行如下: 1)用fResult数组保存阶乘结果; 2)初始化fResult数组,将低位设置为1。 3)用convertIntToList将i转化为数组factor 4)用times函数将fResult与factor相乘,更新fResult。 5)将fResult反向转化为字符串,返回阶乘结果。

    如果问题的关注点是代码执行过程是否使用了循环遍历,可以通过代码中for语句的数量进行简单判断。但是,很多情况下代码可能会在其他地方复用循环结构,而表面上看不出循环的存在。因此,我建议把重点放在具体的执行过程和代码实现思路上,而不是过度关注是否使用了循环遍历。