Python 学习之路-03 分支循环

三大结构

  • 顺序
  • 分支
  • 循环

分支


单向分支

  • 分支的基本语法
    if 条件表达式:
    语句1
    语句2
    语句3
    ........
  • 条件表达式就是计算结果必须为布尔值的表达式
  • 表达式后面的冒号不能少
  • 同样的缩进等级表示一个语句块 类同与java中的{}
  • 表达式结果为True执行:后面的语句块
#if语句案例
#如果age小于18,则打印信息"去叫家长"
age = 19
if age<18:
    print("去叫家长吧.....孩纸!")
    print("我们不带你玩!")
    print("去吧!!!")
print("没有熊孩纸了,开车了!!")
没有熊孩纸了,开车了!!

双向分支

  • if.....else.... 语句
    if 条件表达式:
    语句1
    语句2
    ......
    else:
    语句1
    语句2
    ......
  • 分支结构明确,不是真就是假!不是执行if 就是执行else,一定会执行一个,而且必须执行一个!
#if else 案例
#用户输入性别,判断不同的性别 然后打印不同的信息
gender = input("请输入性别:" )
print("你输入的性别是:{0}".format(gender))
if gender == "男":
    print("男的?拉去写代码!")
else:
    print("女的?拉走....")
请输入性别:女
你输入的性别是:女
女的?拉走....

多项分支

  • 对条件进行多项判断,在判断完第一个分支后,不管满不满足条件,都会执行下一个判断条件
# 多项分支案例
# 成绩判断
'''90以上输出:优秀
  80-90:良
  70-80:中
  60-70:平
  60以下:我没你这傻学生!'''
# input返回类型是str
score = input("输入你的成绩:")
#把str转换成int
score = int(score)
if score>90:
    print("成绩优秀!")
if score>=80 and score <=90:
    print("良")
if score>=70 and score <=80:
    print("中")
if score>=60 and score <=70:
    print("平")
if score<60:
    print("你走!我没你这傻学生!")
输入你的成绩:45
你走!我没你这傻学生!

多路分支

  • 很多分支情况,但是只会执行一个分支条件,只要其中一个满足条件,其他的判断将不会在执行
    if 条件表达式1:
    语句1
    ...
    elif 条件表达式2:
    语句1
    ...
    elif 条件表达式3:
    语句1
    ....
    else:
    语句1
    ...
  • else 可以省略;
#多路分支案例
# input返回类型是str
score = input("输入你的成绩:")
#把str转换成int
score = int(score)
if score>90:
    print("成绩优秀!")
elif score>=80:
    print("良")
elif score>=70:
    print("中")
elif score>=60:
    print("平")
else:
    print("你走!我没你这傻学生!")
输入你的成绩:40
你走!我没你这傻学生!

循环

  • 重复执行某些固定动作或者处理基本固定的事件
  • 在循环中,如果循环变量不重要的话,可以使用_代替
  • 分类
    • for循环
    • while 循环

for循环

  • 基本语法
    for 变量 in 序列:
    语句1
    语句2
    ...
    • 列表
      • 表示一个列数字或其他值的集合
#列表+for的案例
student_names = {"张三","李四","王五","静静"}
for name in student_names:
    print("姓名是:{0}".format(name))
    if name == "静静":
        print("{0}同学,你好!认识下吧!".format(name))
    else:
        print("哦!{0}同学啊!你好,你好!".format(name))
姓名是:王五
哦!王五同学啊!你好,你好!
姓名是:静静
静静同学,你好!认识下吧!
姓名是:张三
哦!张三同学啊!你好,你好!
姓名是:李四
哦!李四同学啊!你好,你好!
衍生知识-range 介绍
  • 生成一个数字序列
  • 具体范围可以设定
    • 注意! 一般在Python中,如果由两个数字表示范围的话,一般是包含左边的数字,不包含右边的数字
    • 如:range(1,10) 包含1 而不包含10 所以打印出来是1-9
# range案例
for i in range(1,10):
    print(i)
1
2
3
4
5
6
7
8
9

for-else 语句

  • 当for循环结束的时候,将执行else语句.else语句是可选的
student_names = {"张三","李四","王五","静静"}
for name in student_names:
    print("姓名是:{0}".format(name))
    if name == "静静":
        print("{0}同学,你好!认识下吧!".format(name))
    else:
        print("哦!{0}同学啊!你好,你好!".format(name))
else:
    print("我的学生到齐了,其他的同学都退了吧!")
姓名是:王五
哦!王五同学啊!你好,你好!
姓名是:静静
静静同学,你好!认识下吧!
姓名是:张三
哦!张三同学啊!你好,你好!
姓名是:李四
哦!李四同学啊!你好,你好!
我的学生到齐了,其他的同学都退了吧!

循环之break、continue、pass

  • break: 无条件结束整个循环,简称循环猝死
  • continue:无条件结束本次循环,从新进入下一次循环
  • pass:....后面学习,通常用于占位
# break 案例
# 在1-10中找到数字7 并打印 然后结束循环
for i in range(1,11):
    if i == 7:
        print(i)
        break        
7
# continue 案例
# 如果是奇数,直接跳过,如果是偶数,就打印
# 在1-10的数字中 打印偶数 
for index in range(1,11):
    if index%2 != 0:
        continue
    print(index)
    
2
4
6
8
10
# pass 案例
# 当一段代码有必要的存在时,如果突然结束会到时报错,这个时候就需要通过pass 进行占位
# 用于占位,避免程序报错!
# 下面for循环是我必须要用的,但是具体的循环体是什么我还没想好!那就先用个pass来把位置给占着吧!
for index in range(1,11):
    pass
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 14,264评论 0 38
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 4,093评论 0 2
  • 我必须告诉你我喜欢你,但是如果你不喜欢我,那我就不喜欢你了,我不会一厢情愿深爱着谁。 这是大三那年我和柳子恒的告白...
    单人一寸山阅读 1,586评论 32 43
  • 愿倾半世才华,也怕误了姑娘一生。
    柯夕阅读 236评论 0 0
  • 谁感冒了?还一直咳嗽?说说咳咳咳了多少天?按个手印再走! 如果天数比较少,那就赶紧溜!如果天数比我多,那就含泪拉拉...
    孟婆的碗不空阅读 658评论 2 8

友情链接更多精彩内容