python基础知识整理大全python基础知识考题python基础知识资料
下载地址 https://share.weiyun.com/t7TNGpYI 资料目录 Python基础知识总结 Python基础知识思维导图 python基础知识实验报告总结 Python基础学习笔记 计算机二级Python基础知识点速记⼿册(涵盖考纲90%内容) Python单选题库 python基础知识选择题(含答案详细解析) Python基础练习题100例(Python3.x) python基础试题(含答案) python基础⾯试题整理 python基础试题(含答案解析)图文复习知识点试卷试题 Python基础知识笔试(含答案) Python练习题有答案 大一python基础知识简答题(121道) python基础知识大一期末考试题及答案 python基础知识课件ppt
举例 所谓“素数”, 是指在大于 1 的自然数中, 除了 1 和它本身以外, 不再有其他因数(即除了 1 以外, 只能被自己除尽) 的数。 编写一个程序, 判断输入的小于 20 的自然数是否为素数, 是则输出所输入的自然数是素数的信息, 否则输出所输入的自然数不是素数的信息。 编写的程序如图所示。 整个程序由一个 while 循环构成, 该循环中, 嵌套了 if 选择语句和 for 循环语句, 情况比较复杂。 while 循环中, 主要嵌套了一个 if-else 语句。 该语句的上半部分检查输入的自然数是否大于 20, 大于20 是不允许的, 会输出信息“input more than 20, re-enter! ”; 检查输入自然数的次数是否超过 2 次, 超过 2 次是不允许的, 会输出信息“input more than 2 ti mes, stop input! ”, 并通过 break 语句退出整个while 循环。 只有在输入的次数不超过 2 次、 输入的自然数小于等于 20 时, 程序才进入 if-else 语句的 else 部分。 这部分由一个 for 循环组成, 通过嵌套在 if-else 语句里面的条件表达式来判定输入的自然数是否是素数: x%i ==0 and i ! =x 如果条件成立, 就输出信息“The X entered = ' + str(x) +' is not prime”(输入的 x 不是素数); 否则输出信息“The X entered = ' + str(x) +' is pri me”(输入的 x 是素数)。 这个条件表达式可以改写成: x%i ==0 and i ! =(x//2+1 ) 这样, 只要检查函数 range() 里参数 i 前面的一半, 就能够断定输入的 x 是否是素数了, 程序运行起来就会更快些。 程序中都是通过 break 语句来强制退出各个循环的, 因此必须搞清楚 break 所在的位置, 绝对不能放错位置, 否则就得不到正确的结果。
编写一个程序, 输出 1 0 以内的奇数。 程序编写如下: k=1 while (k<1 0) : if k%2==0 : k+=1 # ① continue else: print(k) k+=1 # ② print(' End' ) 运行这个程序, 输出结果如图所示。 这里要说明的是, 程序里安排了两条 k+=1 语句(注: 有①和②)。 有必要吗? 答案是有。 如果没有写①这条语句, 那么程序执行时, 窗口显示的内容会如图所示。 为什么会这样呢? 程序开始执行时, k 取值 1 , 遇到条件表达式 k%2==0。 K%2 的结果为 1 , 不等于 0, 因此执行 else 后面的语句: print(k) k+=1 现在 k 取值为 1 , 因此先执行 print(k) , 在窗口输出 1 ; 接着执行语句 k+=1 , 变量 k 现在的取值变成了2。 返回到循环起始处, 进入第 2 次循环。 这时, 条件表达式为 k%2==0, 于是直接执行语句 continue(因为没有①处的语句), 从而使程序陷入死循环。 只能通过按 Ctrl +C 组合键强制程序停止执行。 所以, ①处的 k+=1是必须要有的。 不难理解, ②处的 k+=1 也是必须要有的, 它保证当输出了一个奇数后, 循环能够顺利地进行到下一步。 如果没有②, 那么程序就会不断地输出 1 , 程序也陷入了死循环。 这样的两种死循环, 是由不同的原因引起的, 第 1 个是因为语句 continue 所致, 第 2 个则是因为循环控制变量 k 没有及时修改所致。
|