[Python]小甲鱼Python视频第007-008课(了不起的分支和循环)课后题及参考解答

# -*- coding: utf-8 -*-
"""
Created on Mon Mar  4 23:35:19 2019

@author: fengs
"""



"""
测试题:
0. if not (money < 100): 上边这行代码相当于?
    if money >= 100:
        
1. assert 的作用是什么?
    断言功能,断言条件为假,抛出异常,停止程序,给出错误信息

2. 假设有 x = 1,y = 2,z = 3,请问如何快速将三个变量的值互相交换?
    x,y,z = y,z,x;
    或者
    x,y,z = z,x,y;

3. 猜猜 (x < y and [x] or [y])[0] 实现什么样的功能?
    看不懂,没有括号隔离的多运算符表达式为什么要被制造
4. 你听说过成员资格运算符吗?
    成员资格运算符:in
    成员运算符: .
    
    
动动手:


0. 视频中小甲鱼使用 if-elif-else 在大多数情况下效率要比全部使用 if 要高,但根据一般的统计规律,一个班的成绩一般服从正态分布,也就是说平均成绩一般集中在 70~80 分之间,因此根据统计规律,我们还可以改进下程序以提高效率。
题目备忘:按照 100 分制,90 分以上成绩为 A,80 到 90 为 B,60 到 80 为 C,60 以下为 D,写一个程序,当用户输入分数,自动转换为ABCD 的形式打印。



1. Python 的作者在很长一段时间不肯加入三元操作符就是怕跟 C 语言一样搞出国际乱码大赛,蛋疼的复杂度让初学者望而生畏,不过,如果你一旦搞清楚了三元操作符的使用技巧,或许一些比较复杂的问题反而迎刃而解。
请将以下代码修改为三元操作符实现:
x, y, z = 6, 5, 4
if x < y:
    small = x
    if z < small:
        small = z
elif y < z:
    small = y
else:
    small = z
2. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!
    eee
"""

#动动手0
score = 95;
level = 'E';
if score > 90:
    level = 'A';
elif score > 80:
    level = 'B';
elif score >= 60:
    level = 'C';
else:
    level = 'D';
print(level);

#动动手1:
x, y, z = 6, 5, 4
small = x if (x<y and x<z) else ( y if y < z else z);
print(small);

  

posted @ 2019-03-04 23:47  Alimy  阅读(553)  评论(0编辑  收藏  举报