选课名单里有没有我:for-else

「找到了就停,找完都没有再说一声」——这正是循环 else 的用处: for x in 名单: if 找到: ... break else: # 和 for 对齐!循环

开始练习 →

二级 · 选择:try-except-else-finally 走哪条路

阅读下面的程序: a = [10, 20, 30] for k in ['1', 'x', '5']: try: v = a[int(k)] except Va

开始练习 →

二级 · 基本编程题:3 的倍数但不是 5 的倍数

基本编程题:请在 ______ 处填写代码,不得修改其他代码。 键盘输入正整数 n,求 1 到 n(包括 n)中所有「是 3 的倍数但不是 5 的倍数」的数之和。 样例:输入 10,输出: 18

开始练习 →

二级 · 综合编程题:判断质数并处理错误输入

综合编程题:键盘输入一行内容。 如果它不是整数,输出 输入错误; 如果是整数 n:n 是质数输出 n是质数,否则输出 n不是质数(小于 2 的数都不是质数)。 提示:可以用 try-except-else 处理输入,用 for-else 判

开始练习 →

我的学期绩点单

把这学期的课录进去,算出你的加权绩点,运行后在画布上存视频发给室友。 每行一门课:课程名 学分 成绩(空格隔开),最后一行是 end。程序已经写好了读入和跳过错误行,你来补上成绩换算绩点:90 及以上 4.0,80~89 3.0,70~79

开始练习 →

默认参数、关键字参数与返回 None

二级考函数,考的都是细节。先看一遍本关要用的写法: 默认参数:def pay(price, n=1),调用时不给 n 就用 1。有默认值的参数要写在后面。 按名字传(关键字参数):pay(8, n=3),写了名字就可以不管顺序。 可变参数:

开始练习 →

递归求阶乘:基例写错了

递归就是函数调用自己。写递归要两样东西: 基例:最简单的情况直接给答案,不再调用自己(否则停不下来,报 RecursionError); 递推:把问题变小一点,交给自己去算。 def fact(n): if n == 0:

开始练习 →

成绩统计:用 return 交出三个值

函数算出的结果要交回给调用的地方,用 return;print 只是显示出来,调用的地方拿不到。 def f(): return 1, 2 # 返回元组 (1, 2) a, b = f() #

开始练习 →

歌手大赛:去掉最高最低分

参数写成 名字=默认值,调用时就可以不传它;传的时候也可以写名字: def greet(name, word='你好'): print(word, name) greet('小林')

开始练习 →

宿舍 AA:费用有几笔算几笔

形参前面加 *,就能接收任意多个参数,函数里它是一个元组: def total(*fees): return sum(fees) print(total(12, 30, 8)) # fees 是 (12, 30, 8),输

开始练习 →