python学习笔记05-条件分支与循环1

思考问题:100分制,90分以上为A,80-90为B,60-80为C,60以下为D,当用户输入成绩后,打印对应的字母

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

很简单的小循环,可惜这缩进错误搞得我头疼啊...

小插曲--一般缩进错误肉眼难见,可以到notepad上设置一下便很好看出了,特别是缩进空格混用的情况

            也可以使用Pycharm来运行,可知道具体哪行报错。

回归上题,elif=else if

也可以用比较直观的方法写出来,例如:

temp=input('请输入你的成绩:')
score=int(temp)
if 100 >= score >= 90:
    print('A')
if 90 > score >= 80:
    print('B')
if 80 > score >= 60:
    print('C')
if 60 >=score >= 0:
    print('D')
if score > 100 or score < 0:
    print('输入有误!')

两者的区别在于使用esif可以节省CPU时间,后者方法即使输入的数第一个if就能判断出来,也会把后面的if统统执行一遍才会打印结果

而esif在判断出来结果后不会执行后续判断

python可以有效避免悬挂esle

例如:

if(h1>2):
  if(h2>7):
     print()
esle:
  print()

c语言的if--esle有就近原则。最后的esle会跟随第二个if进行条件判断

而python有严格的缩进规范,由代码缩进来决定else跟随哪个if来执行程序,从而从根源避免一些容易忽略的问题出现

pytho的三元操作符

语法: x  if 条件 else y 

当条件为True时输出x,当条件为False时输出的值为y

举例子:

x,y=4,5

if x<y:

  small=x

else:

  small=y

### small= x if x<y else y

断言(assert)

当assert关键字后面的条件为假的时候程序会自动崩溃,并抛出AssertionError的异常

什么情况下会需要这样会自爆的代码呢??

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

成员资格运算符

Python 有一个成员资格运算符:in,用于检查一个值是否在序列中,如果在序列中返回 True,否则返回 False。

  

原文地址:https://www.cnblogs.com/fengchuiyangliu/p/11299141.html