• 005收获:

一:请用最快速度说出答案:not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9

我以为结果会是true或者false,但是结果不是

小甲鱼python课后作业和答案 小甲鱼python视频教程_小甲鱼python课后作业和答案

这是为啥,查阅网上资料

小甲鱼python课后作业和答案 小甲鱼python视频教程_小甲鱼python课后作业和答案_02

而又优先级,not>and>or,

小甲鱼python课后作业和答案 小甲鱼python视频教程_Python_03

小甲鱼python课后作业和答案 小甲鱼python视频教程_小甲鱼python课后作业和答案_04

之后就是4 or 6,4 or 9 了答案就是4了

 

  • 006收获:

课程视频:

  1.   编程要会提纲

课后习题:

  1. assert 的作用是什么?

      assert “断言”,当这个关键字后边的条件为假的时候,程序自动崩溃并抛出 AssertionReeor,可以用来设置程序断点检测

小甲鱼python课后作业和答案 小甲鱼python视频教程_成员资格_05

 

 

  • 007收获:

课程视频:

  1. elif 相当于c中的else if,会让代码看起来简洁很多,也可以有效避免悬挂else的问题
  2. python中唯一的三元操作符,
small = x if x<y else y
#这句话等价于
if x<y:
    small =x
else:
    small =y

课后习题 :

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

x,y,z=1,2,3

x,y,z=z,y,x

print(x,y,z)

原来python中支持这样的多元赋值

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

Python 有一个成员资格运算符:in,用于检查一个值是否在序列中,如果在序列中返回True,否则返回False
>>> name ="小甲鱼"
>>> '鱼' in name
True
>>> '哈哈' in name
False

  3.isspace()用于检测字符是否是空格

  4.转换成三元操作符

x,y,z =6,5,4

if x<y:

  small=x

  if z<small:

    small=z

elif y<z:

  small=y

else:

  small=z

转化为三元操作符:
small = x if x<( y if y<z else z) else ( y if y<z else z)
#这是里面又套用了一个三目操作符,从获得最小值的概念写的
#自己尝试写一遍:
small = x if x<(y if y<z else z) else (y if y<z else z)
#OK!

 

 

  • 009收获

视频课程:

  1. for循环
#表达式是 
#for 目标 in 表达式
#    循环体       
for i in 'member':
    print(i,end=' ')
  1. range用于产生一个数列组,常常和for一起使用,range(start,stop,step)
for i in range(5):
    print(i)

小甲鱼python课后作业和答案 小甲鱼python视频教程_成员资格_06

   3.break是直接结束循环,continue是结束当前的循环,剩下的不执行了,继续下一次的循环

课后习题:

  1. 5.【学会提高代码的效率】你的觉得以下代码效率方面怎样?有没有办法可以大幅度改进(仍然使用while)?
i = 0  

string = 'ILoveFishC.com'  

while i < len(string)):  

  print(i)   

  i += 1

这里是避免在循环中不断的调用方法

答:

i =0

string = 'ILoveFishC.com'  

length =len(string)

while i< length:

  print(i)

  i +=1
  1. 设计一个验证用户密码程序,用户只有三次机会输入错误,不过如果用户输入的内容中包含"*"则不计算在内。
#答案中给的是count,这样可能表述更好一点
number = 3
mima = 'xyf123'
temp=input('请输入密码:')
while number>1:
    if temp==mima:
        print("密码输入正确!")
        break
    #elif for i in temp=='*':
    #这个 in 的用法学到了 
    elif "*" in temp:
        temp=input('请重新输入密码,密码中不能包含*'+'(还有'+str(number)+'次机会):')
        continue
    else:
        number-=1;
        #如果直接加number会报错的,字符串中无法直接拼接
        temp=input('请重新输入密码'+'(还有'+str(number)+'次机会):')
if number==0:
    print('请等待一年之后再尝试')