小甲鱼《零基础学习Python》课后笔记(七、八):了不起的分支和循环1

测试题

0.if not(money < 100):上边这行代码相当于?

if money >= 100

 

1.assert的作用是什么?

assert这个关键字我们称之为“断言”,当这个关键字后边的条件为假的时候,程序自动崩溃并抛出AssertionError的异常。

什么情况下我们会需要这样的代码呢?当我们在测试程序的时候就很好用,因为与其让错误的条件导致程序今后莫名其妙地崩溃,不如在错误条件出现的那一瞬间我们实现“自爆”。

一般来说我们可以用Ta再程序中置入检查点,当需要确保程序中的某个条件一定为真才能让程序正常工作的话,assert关键字就非常有用了。

格式 : assert+空格+要判断语句+逗号+双引号“报错语句”

  >>> assert 5 > 6, "错误"  
  Traceback (most recent call last):  
    File "", line 1, in   
      assert 5 > 6, "错误"  
  AssertionError: 错误  

 

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

x, y, z = z, y, x

  >>> x =1  
  >>> y = 2  
  >>> z = 3  
  >>> x,y,z = z, y, x  
  >>> z  
  1  
  >>> y  
  2  
  >>> x  
  3  

 

3.猜猜(x < y and [x] or [y])[0]实现什么样的功能?

这其实是 Python 的作者还没有为 Python 加入三元操作符之前,Python 社区的小伙伴们灵活的使用 and 和 or  搭配来实现三元操作符的功能。

 

4.你听说过成员资格运算符吗?

in。用于检查一个值是否在序列中,在就返回True,否则返回False。

  >>> name = 'allen'  
  >>> 'a' in name  
  True  
  >>> 'all' in name  
  True  
  >>> 'All' in name  
  False 

 

动动手

0.视频中小甲鱼使用ifelif else在大多数情况下效率要比全部使用if要高,但根据一般的统计规律,一个班的成绩一般服从正态分布,也就是说平均成绩一般集中在70~80分之间,因此根据统计规律,我们还可以改进以下程序以提高效率。

题目备忘:按照100分制,90分以上成绩为A,80到90位为B,60到80为C,60以下为D,写一个程序,当用户输入分数时,自动装换为ABCD形式打印。

  number = input('请输入你的成绩:')  
  grade = int(number)  
  if 100 >= grade >= 90:  
      print('A')  
  elif 90 > grade >= 80:  
      print('B')  
  elif 80 > grade >= 60:  
      print('C')  
  elif 60 > grade >= 0:  
     print('D')  
  else:  
     print('输入错误!')  

 

1.Python的作者在很长一段时间不肯加入三元操作符就是怕跟C语言一样搞出国际乱码大赛,蛋疼的复杂度让初学者望而生畏,不过,如果你一旦搞清楚了三元操作符的使用技巧,或许一些比较复杂的问题反而迎刃而解。

请将以下代码修改为三元操作符实现:

  x, y, z = 6, 5, 4  
  if x < y:  
      samll = x  
      if z < small:  
          small = z  
  elif y < z:  
      small = y  
  else:  
      small = z  

修改后:

small = x if (x < y and x < z) else (y if y < z else z) 

 

最后,我想推荐一下我的公众号,公号现在还没有内容,以后会慢慢的添加的,博客也会同步更新到公众号的。其实我是有私心的,就是想练一练写作能力,也希望关注我的读者也能和我一起成长。

小甲鱼《零基础学习Python》课后笔记(七、八):了不起的分支和循环1_第1张图片

 

 

 

 

你可能感兴趣的:(#,python)