00x1 python分支循环

2018-07-23 05:41:51来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

分支

  • 分支的基本语法

    • if 条件表达式:
      • 语句1
      • 语句2
      • 语句3
      • ......
  • 条件表达式就是计算结果必须为布尔值的表达式
  • 表达式后面的冒号不能少
  • 注意if后面的出现的语句,如果属于if语句块,则必须同一个锁紧等级
  • 条件表达式结果为True执行if后面的缩进的语句块
In [4]:
 
 
 
 
 
# if语句练习
# 如果age小于18岁,则打印信息“未成年不能上车”    
age = 17
if age < 18:
    print('未成年不能上车')
    print('你走吧,我妈不让我跟小孩玩')

  

 
 
 
未成年不能上车
你走吧,我妈不让我跟小孩玩
In [2]:
 
 
 
 
 
# if语句练习
# 如果age小于18岁,则打印信息“未成年不能上车”
age = 19
if age < 18:
    print('未成年不能上车')
    print('你走,我妈不让我跟小孩玩')
print('开始上车咯,小伙子们')
 

  

 
 
 
开始上车咯,小伙子们
In [3]:
 
 
 
 
 
# if语句练习
# 如果age小于18岁,则打印信息“未成年不能上车”
age = 19
if age < 18:
    print('未成年不能上车')
print('我们不带你玩')
?
print('开始上车咯')
 

  

 
 
 
我们不带你玩
开始上车咯
In [5]:
 
 
 
 
 
print('今天学习for循环')
gender = "男"
if gender == "女":
    print('来,叔叔给你糖吃')
print('开始讲for循环了')
?

  

 
 
 
今天学习for循环
开始讲for循环了
 

双向分支

  • if...else...语句

    • if 条件表达式:
      • 语句1
      • 语句2
      • ...
    • else:
      • 语句1
      • 语句2
      • .....
  • 双向分支有两个分支,当程序执行到if ... else...语句的时候,一定会执行if或else中的一个,也仅执行一个

  • 缩进问题,if和else一个层级,其余语句一个层级

In [8]:
 
 
 
 
 
# input的作用是
# 1. 在屏幕上输出括号内的字符串
# 2. 接受用户输入的内容并返回到程序
# 3. input返回的内容一定是字符串类型
gender = input('请输入性别:')
print('你输入的性别是:{0}'.format(gender))
?
if gender == '男':
    print('来,我们纪念一下今天吧,代码敲十遍')
?
else:
    print('发糖咯')
    print('发糖咯')
?
print('结束')
 

  

 
 
请输入性别:男
你输入的性别是:男
来,我们纪念一下今天吧,代码敲十遍
结束
In [9]:
 
 
 
 
 
# 考试成绩判断
# 90以上: 输出优秀
# 80-90:良
# 70-80:中
# 60-70:平
# 60以下: 输出:我没你这撒学僧

  

 
 
 
In [10]:
 
 
 
 
 
# score  存放学生成绩
# 注意input的返回值类型
score = input("请输入学生成绩:")
# 需要把str转换成int
score = int(score)
?
if score >= 90:
    print('A')
if score >= 80 and score < 90:
    print('B')
if score >= 70 and score < 80:
    print('C')
if score >= 60 and score < 70:
    print('D')
?
if score < 60:
    print("你走,我妈不让我跟傻子玩")
 
 

  

 
请输入学生成绩:80
B
 

多路分支

  • 很多分支的情况,简称多路分支

    • if 条件表达式:
      • 语句1
      • ....
    • elif 条件表达式:
      • 语句1
      • ...
    • elif 条件表达式:

      • 语句1
      • ...
    • .....

    • else: -语句1 ....
  • elif 可以由很多歌

  • else可选

  • 多路分支只会选一个执行
In [11]:
 
 
 
 
 
# score  存放学生成绩
# 注意input的返回值类型
score = input("请输入学生成绩:")
# 需要把str转换成int
score = int(score)
?
if score>=90:
    print("A")
elif score>= 80:
    print("B")
elif score >= 70:
    print("C")
elif score >=60 :
    print("D")
else:
    print("你走,我妈不让我跟傻子玩")

  

 
 
 
请输入学生成绩:8
你走,我妈不让我跟傻子玩
 

if语句其他:

  • if语句可以嵌套使用,但不推荐
  • python没有switch-case语句
 

循环语句

  • 重复执行某些固定动作或者处理基本固定的事物
  • 分类
    • for循环
    • while循环 # for循环
  • for循环

    • for 变量 in 序列:
      • 语句1
      • 语句2
      • 。..
In [12]:
 
 
 
 
 
# 列表就是一列数字或者其他值,一般用中括号表示
# 例如  ['Google', 'baidu', 'github','cnbolg']
?
# 打印学生列表姓名
for name in  ['Google', 'baidu', 'github','cnbolg']:
    print(name)
 

  

 
 
 
Google
baidu
github
cnbolg
In [14]:
 
 
 
 
 
# 打印学生列表姓名
# 如果是妹子,那肯定是我的最爱呀,
# 如果是男同学,那要冷酷的拒绝他
for name in  ['静静', '小明', '老王','老毕']:
    print(name)
    if name == "静静":
        print('我最喜欢的{0}妹子'.format(name))
    else:
        print('你给我走,我妈不让我跟男同学玩')
?
 

  

 
 
 
静静
我最喜欢的静静妹子
小明
你给我走,我妈不让我跟男同学玩
老王
你给我走,我妈不让我跟男同学玩
老毕
你给我走,我妈不让我跟男同学玩
 

range介绍

  • 生成一个数字序列
  • 具体范围可以设定
In [15]:
 
 
 
 
 
# range练习
# 打印从1-10的数字
# 注意,一般在python中,如果由表示数字范围的两个数,一般是包含左边数字不包含右边数字
# randint是特例,他左右都包含
# range函数在python2 和 python3中有严重区别
for i in range(1,11):
    print(i)

 

1
2
3
4
5
6
7
8
9
10
 

for-else语句

  • 当for循环结束的时候,会执行else语句
  • else语句是可选语句
In [16]:
 
 
 
 
 
?
# for-else语句# for-else 
# 打印列表中的同学,
# 如果没有在列表中,或者列表结束了,我们需要打印提示语句,表示不在爱了
?
# 打印学生列表姓名
# 如果是静静,那肯定是我的最喜欢的妹子,
# 如果是男学生,那要冷酷的拒绝他
for name in ['静静', '小明', '老王','老毕']:
    print(name)
    if name == '静静':
        print('我最喜欢的{0}妹子出现了'.format(name))
?
    else:
        print('你走,我妈不让我跟男同学玩')
?
else:
    print('我喜欢的妹子不在,我生气了')
    print('我喜欢的妹子不在,我生气了')
    print('我喜欢的妹子不在,我生气了')
    print('我喜欢的妹子不在,我生气了')
 
 
 

  

 
静静
我最喜欢的静静妹子出现了
小明
你走,我妈不让我跟男同学玩
老王
你走,我妈不让我跟男同学玩
老毕
你走,我妈不让我跟男同学玩
我喜欢的妹子不在,我生气了
我喜欢的妹子不在,我生气了
我喜欢的妹子不在,我生气了
我喜欢的妹子不在,我生气了
 

循环之break,contineu,pass

  • break: 无条件结束整个循环,简称循环猝死
  • continue:无条件结束本次循环,从新进入下一轮循环
  • pass:表示略过,通常用于站位
In [17]:
 
 
 
 
 
# 在数字1-10中,寻找数字7,一旦找到,打印出来,其余则什么都不做
# for 循环中的变量表示,一般用i,k,m,n,或者indx,idx,item之类
# 在python中,如果循环变量名称不重要,可以用下划线(_)代替
?
for i in range(1,11):
    if i == 7:
        print("我找到了")
        break
    else:
        print(i)
 

  

1
2
3
4
5
6
我找到了
In [18]:
 
 
 
 
 
# continue语句联系
# 在数字1-10中,寻找所有偶数,找到偶数后打印偶数
?
for i in range(1,11):
    if i % 2 == 1:
        continue
    else:
        print("{0} 是偶数".format(i))
 

  

 
 
 
2 是偶数
4 是偶数
6 是偶数
8 是偶数
10 是偶数
In [19]:
 
 
 
 
 
?
# continue语句 版本 2# contin 
# 在数字1-10中,寻找所有偶数,找到偶数后打印偶数
?
for i in range(1,11):
    if i % 2 == 0:
        print("{0} 是偶数".format(i))
 
 
 

  

 
2 是偶数
4 是偶数
6 是偶数
8 是偶数
10 是偶数
In [20]:
 
 
 
 
 
# continue语句 版本 2
# 在数字1-10中,寻找所有偶数,找到偶数后打印偶数
# 本案例完整显示continue的用法和作用
for i in range(1,11):
    if i % 2 == 1:
        continue
    print("{0} 是偶数".format(i))
 

  

 
 
 
2 是偶数
4 是偶数
6 是偶数
8 是偶数
10 是偶数
In [22]:
 
 
 
 
 
# pass例子,一般用于占位
# pass没有跳过功能
?
for i in range(1,10):
    pass
    print("test!")
 

  

 
 
 
test!
test!
test!
test!
test!
test!
test!
test!
test!
In [ ]:
 
 
 
 
 
?
 
 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:清华大学计算机硕士为大家带来史上最详细的生成器的使用技巧!

下一篇:通过几行代码就能搞定的事!为什么非要用100个GPU!脱掉裤子放屁