人工智能(python)开发 ——if 语句、循环语句(while、for)

       本章知识点:if语句、循环语句(while、for),break和continue语句、以及range函数

一、if 语句

1、作用
        让程序根据条件选择性的执行某条语句或某些语句
2、语法:
    if 真值表达式:
        语句块1...
    elif 真值表达式2:
        语句块2...
    elif 真值表达式3:
        语句块3...
    ...
    else:
        语句块4
        说明:
                1、elif 子句也可有一个或多个,也可以没有
                2、else 子句最多只能有一个,也可以没有     
    
3、if 语句的真值表达式:
  if 100:
      print("真值")
  等同于:
  if bool(100):
      print("真值")
4、if 语句嵌套
         if 语句可以为作语句嵌套到另一个语句的内部
        示例:
# if_embed.py

# 此示例示意if语句嵌套
# 问题:
#   输入一个学生的成绩:
#   根据等级打印出,优,良,及格,不及格
score = int(input("请输入学生成绩: "))
if 0 <= score <= 100:
    print("成绩合法")
    if score >= 90:
        print("优")
    elif score >= 80:
        print("良")
    elif score >= 60:
        print("及格")
    else:
        print("不及格")

else:
    print("您的输入有误!")
5、条件表达式
        语法:
                表达式1  if  真值表达式  else  表达式2
        作用:
                根据真值表达式的取值(True/False) 来决定执行表达式1还是表达式2,并返回相应的结果( 真值表达式  为True 则执行 表达式1否则执行 表达式2,并返回执行结果)
        示例:
# if_express.py

# 此示例示意条件表达式的用法
# 商场促销,满100减20
money = int(input("请输入商品总额: "))

pay = money - 20 if money >= 100 else money  # 需要支付的钱

print("您需要支付:", pay, "元")

二、while 语句

1、作用:根据一定条件,重复的执行一条语句或多条语句
2、语法:
    while 真值表达式:
      语句块1
    else:
      语句块2
3、说明:
        1、先执行真值表达式, 测试布尔值是否为True
        2、如果真值表达式的值为True,则执行语句1,然后再返回到第1步,重复进行测试

        3、如果真值表达式的值为False,则执行else子句中的语句块2, 然后结束此while语句, 如果没有else子句, 则直接结束此while语句的执行

        4、 else 子句部分可以省略(同 if类似)
4、示例:
# while.py

# 问题:
#   输入一个整数n,根据这个整数打印n行的"hello"
n = int(input("请输入整数: "))

i = 0
while i < n:
    print('hello')
    i += 1
else:
    print("i < n 此时为False才会执行我这一条语句")
    print("此时i=", i, "n=", n)
print("程序结束")
5、while 语句的注意事项
        1、要控制循环的真值表达式的值来防止死循环
        2、通常用真值表达式内的循环变量来控制循环条件
        3、通常在循环语句块内改变循环变量来控制循环的次数和变量的走向
6、while 语句嵌套
         while 语句本身也是语句,和其它语句一样,可以嵌入if语句和while语句
        语法:
    while 真值表达式:
        ....
        while 真值表达式2:
            ...
        else:
            ...
    else:
       ...
        示例:
# 打印 1 ~ 20 的整数, 打印在一行内
# 1 2 3 4 5 ..... 18 19 20
# 打印以上10行这样的数

# 此示例示意循环语句的嵌套
j = 0
while j < 10:
    # print("1 2 3 4 5 6 ...... ")
    # 以下是打印一行 1 2 3 4 ....
    i = 1
    while i <= 20:
        print(i, end=' ')
        i += 1
    print()  # 换行
    j += 1

三、for 语句

1、作用

        用来遍历可迭代对象的数据元素

        可迭代对象是指能依次获取数据元素的对象

2、可迭代对象包括
    字符串str
    ----以下后面章节见----
    列表 list
    元组 tuple
    字典 dict
    集合 set
    range函数返回的对象等
3、语法
    for 变量列表 in 可迭代对象:
        语句块1
    else:
        语句块2
4、示例
# for.py
# 此示例示意用for语句的用法

s = 'ABCDE'
for ch in s:
    print("ch -->>", ch)
else:
    print("可迭代对象已经不能再提供数据了!")

print('程序结束')
5、for 语句的嵌套
        示例:
    for x in "ABC":
        for y in '123':
            print(x + y)    
    # 输出结果:A1 A2 A3 B1 B2 B3 C1 C2 C3

四、break 语句

1、作用
        用于循环语句(while、for语句)中,用来终止当前循环语句的执行
2、说明
        1. 当break语句执行后,此循环语句break之后的语句将不再执行
        2. break 语句通常和if语句组合使用
        3. break 语句终止循环时,循环语句的else子句的语句不会被执行
        4. break 语句只能终止当前循环语句的执行,如果有循环嵌套时,不会跳出嵌套的外重循环
        5. break 语句只能用在循环语句(while或for)内部使用
3、示例
# break.py
# 此示例示意break语句的用法

i = 1
while i < 6:
    print("循环开始时:", i)
    if i == 3:
        break
    print("循环结束时:", i)
    i += 1
else:
    print(i, "< 6 条件不成立")

print("while 语句结束,此时i的值为:", i)

五、死循环

    1、死循环是指条件一直成立的循环
    2、死循环通常用break 语句来终止循环
    3、死循环的else子句永远不会执行

六、continue 语句

1、作用

        用于循环语句(while,for语句)中,不再执行本次循环 continue之后的语句,重新开始一次新的循环

2、说明

        1. 在for 语句中执行continue语句,将会从可迭代对象中取下一个元素,绑定变量后再次开始执行
        2. 在while语句中执行continue,将会直接跳转到 while语句的真值表达式处重新判断循环条件

3、示例
# continue.py
# 此示例示意contine语句跳过奇数打印偶数

# 打印20以内的全部偶数
for x in range(20):
    # 判断如果x是奇数,则取下一个数
    if x % 2 == 1:
        continue
    print(x)
七、补充:range 函数
1、作用

        用来创建一个生成一系列整数的可迭代对象(也叫整数序列生成器)

2、说明
        range(stop)从零开始,每次生成一个整数后加1操作,直到stop为止(不包含stop)
        range(start, stop[, step])  从start开始,每次生成一个整数后移动step, 直到stop为止(不包含stop, 且step可以是负整数)
3、格式
    range(4)         # 生成 0, 1, 2, 3
    range(3, 6)      # 生成 3, 4, 5
    range(1, 10, 2)  # 生成 1 3 5 7 9
    range(5, 0, -2)  # 生成 5, 3, 1
    range(4, 0)      # 生成空
4、示例
# continue.py
# 此示例示意range函数经常与for语句组合使用

# 打印20以内的全部偶数
# for x in range(20):
    # 判断如果x是奇数,则取下一个数
    if x % 2 == 1:
        continue
    print(x)
    x += 1

##################################################################################

##############################             练      习          ##############################

##################################################################################

算出100~1000之间的水仙花数,水仙花是指百位的立方 + 十位的立方 + 个为的立方 等于原数的数字。

例子:153 = 1**3 + 5**3 + 5**3

# 方法1
for x in range(100,1000):
	if x == (x%10)**3 + (x//10%10)**3 +(x//100)**3:
		print(x ,end = ' ')
		
# 方法2
for x in range(100,1000):
	y=str(x)
	num = 0
	for c in y:
		num +=int(c)**3
	if x == num:
		print(x,end= ' ' )
	
# 方法3
for b in range(1,10):
	for s in range(0,10):
		for g in range(0,10):
			n =b*100 + s*10 + g
			if n == b**3 +s**3 +g**3:
				print(n,end = ' ' )
print()
结果: 153  370  371  407

八、附录

         人工智能(python)—— 目录汇总
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值