美文网首页
分支和循环

分支和循环

作者: 憧憬001 | 来源:发表于2018-11-09 19:08 被阅读0次

一、分支

1. if 语句

  • a.语法:
    if 条件语句:
    代码段
  • b.说明:
    if - 关键字
    条件语句 - 任何有结果的表达式(不管是什么类型)
    代码段和if保持一个缩进的一条或者多条语句
  • c.执行过程:
    先判断条件语句的结果是否是True,如果是则执行,反之则不执行
    注意:如果条件语句的结果不是布尔,会将结果转化为布尔再判断
    赋值语句不能写在if的后面
# 练习:随机产生一个年龄值,如果大于18就打印 成年
import random  # 导入生成随机数的模块
age = random.randint(0, 100)   # 随机生成0~100中的一个数(不包括100)
if age >= 18:
    print("成年")
print("你的年龄是%d" % age)

2. if- else 语句

  • a.语法:
    if 条件语句:
    代码段1
    else:
    代码段2

  • b.执行过程:
    先判断条件语句是否为True,为True就执行代码段1:否则执行代码段2

# num = input("请输入")
num = 12
# try,except,finally为异常捕获
try:    # 尝试执行的代码
    if num & 1 == 0:
        print("我是偶数%d" % num)

    elif num & 1 == 1:
        print("你是奇数%d" % num)
except:    # 发生异常执行的代码 
    print("非奇非偶吧你{0}".format(num))
finally:     # 无论发不发生异常都会执行的代码
    print("Hello python")

3. if - elif - else 语句

  • 语法:
    if 条件语句1:
    代码段1
    elif 条件语句2:
    代码段2
    elif 条件语句3:
    代码段3
    ...
    else:
    代码段n

  • 执行过程:
    先判断条件语句1是否为True,为True就执行代码段1;
    否则,就判断条件语句2是否为True,为True就执行代码段2
    否则,就判断条件语句3是否为True,为True就执行代码段3
    ...
    如果全部条件语句都不执行就执行 else
    注意:1.后面的条件判断前提是前面的条件不成立
    2.elif根据条件可以有多个,else也可以省略

import random
score = random.randint(40, 100)
print("你的考试成绩:%d" % score)
print("你的综合测评:", end="")
if score >= 90:
    print("A")
elif score >= 80:
    print("B")
elif score >= 70:
    print("C")
elif score >= 60:
    print("D")
else:
    print("留级")

4. if 的嵌套

  • 可以在if ,else后面的代码段中,都可以再写其他的if语句
number = random.randint(0, 100)
if number & 1 == 0:
    print("偶数:%d" % number)
    if number % 4 == 0:
        print("4的倍数:%d" % number)
else:
    print("你是奇数:%d" % number)


# 练习:输入一个字符串,判断是否第一个字符是字母,如果是 打印“一字母开头”
#       如果这个字母是大写的,再打印“大写字母”

str1 = input("请输入")
if str1[0].isalpha():
    print("字母开头")
    if str1[0].isupper():
        print("大写字母")
else:
    print(str1)

# 方法2
if "a" <= str1[0] <= "z" or "A" <= str1[0] <= "Z":
    print("以字母开")
    if "A" <= str1[0] <= "Z":
        print("大写字母")
else:
    print(str1

二、for 循环

  • a.语法:
    for 变量 in 序列:
    循环体

  • b.for - 关键字
    变量 - 变量名,(满足变量命名规范)
    in - 关键字
    序列 - 可以是字符串、列表、元组、字典、集合、迭代器、range
    循环体 - 和for保持一个缩进的一条或者多条语句(需要重复执行的代码)

  • c.执行过程:
    让变量取序列中取值,一个一个的取,取完为止;每取一个值,依次执行循环体
    for循环中,序列中值的个数,确定了循环的次数

  • d.如果for后面取到的值,在循环体里面不使用,那么这个变量命令的时候,用一个_来命名

for i in "abc":
    print(i)

range说明

  • range(n) - 产生数字序列,序列中的内容是0~ n-1(结果是序列)
    range(m,n) - 产生数字序列,序列中的内容是m~ n-1
    range(m,n,step) - 产生数字序列,从m开始,每次增加step,直到n-1为止
    range一般用在:
    a.需要产生指定范围的数字序列
    b.单纯的控制for循环的次数
for i in range(5):
    print(i)
print("~"*20)
for i in range(10, 15):
    print(i)

for i in range(20, 30, 2):
    print(i)

练习:获取一个字符串中数字的个数,并在控制台输出

str1 = "sd454df5sd5f45dfd4f5dfdg"

count = 0
for char in str1:
    # print(i)
    if "0" <= char <= "9":
        count += 1
print("数字个数:%d" % count)

三、while 循环

  • a.语法:
    while 条件语句:
    循环体

  • b. 说明:
    while - 关键字
    条件语句 - 有结果的表达式(除了赋值语句,一般的表达式都行)

  • c.执行过程:
    先判断条件语句是否为True,为True就执行循环体;
    执行完循环体再判断条件语句是否为True,为True就执行循环体;
    执行完循环体再判断条件语句是否为True,为True就执行循环体;
    ...
    直到判断条件结果为False,整个循环结束

num = 1
result = 1
while num <= 10:
     result *= num
     num += 1
print(result)

str1 = "abc123"
num = 0
while num < len(str1):
    print(str1[num])
    num += 1

for循环和while循环的选择

  • 使用for循环:
    a. 获取序列中的元素(值)
    b. 循环次数确定

  • while循环:
    a. 死循环
    b. 循环次数不确定

# 不确定循环的次数
# 方法一
value = input('请输入:')
while value != '0':
    value = input('请输入:')
print('结束!')
# 方法二
while True:
    index = input("请输入:")
    if index == "0":
        print("~~~~~~~~~")
        break

四、continue、break和else

  • continue 是一个关键字,只能写在循环中
    功能:当循环执行过程中遇到continue,会结束当次循环,直接今日下次循环的判断
    (直接进入下次循环的判断:for循环就是用比那辆取下一个值
    while就是直接判断条件语句是否为True
for i in range(0, 10):
    if i & 1 == 0:
        continue
    print("我是奇数:%d" % i)
  • break是一个关键字,只能写在循环体中
    功能:当循环过程中遇到可break,整个循环直接结束
for x in range(10):
    print(x)
    break

else

  • a.语法:
    while 条件语句:
    循环
    else:
    代码段

for 变量 in 序列:
循环体
else:
代码段

  • b.执行过程:
    else结构不会影响原循环的执行过程。当循环自然死亡的时候,就会执行else后边的代码段。
    循环因为遇到break而结束的时候不会执行else后边的代码段
for x in range(10):
    print(x)
    if x == 3:
        break
else:
    print('for循环结束了')

相关文章

  • 循环和分支

    分支 if 分支 else通过缩进来匹配if,等价于: 条件表达式 a = x if 条件 else y 断言 a...

  • 循环和分支

    循环结构 分支结构 break和continue对比 break:终止循环,循环中后面的代码不再执行continu...

  • 分支和循环

    一、分支 1. if 语句 a.语法:if 条件语句:代码段 b.说明:if - 关键字条件语句 - 任何有结果的...

  • day循环和分支

    import是导入一个模块/包的关键字 random模块中提供很多和随机相关的功能

  • 循环和条件分支

    条件分支语句,if elif else 代码如下: 循环1 for in 循环 break 和 continue

  • 4、分支和循环

    (1)if语句 注意: if 语句后接表达式,然后用:表示代码块开始 Python代码的缩进规则具有相同缩进的代码...

  • python 分支和循环

    1 if条件判断三种形式 第一种 第二种 第三种 2 for循环 for x in ...循环就是把每个元素代入变...

  • Go语言学习笔记06.流程控制

    分支结构 循环结构 for循环 range迭代 break和continue goto

  • Linux/unix-shell之流程控制语句

    目录 单分支 双分支 多分支 for循环for in 格式c语言格式for循环 while循环 break关键字...

  • py_11分支和循环

    xmind总结:1.分支 2.循环 分支和循环 一、程序执行的三大流程 1.顺序执行 2.分支:选择条件执行 3....

网友评论

      本文标题:分支和循环

      本文链接:https://www.haomeiwen.com/subject/offoxqtx.html