学习python的第三天

本文详细介绍了Python中的分支结构,包括if单分支、双分支和多分支结构,以及三目运算符的使用。同时,讲解了for循环、while循环的基础概念,以及如何使用range函数。此外,还涵盖了break、continue和else在循环中的应用。
摘要由CSDN通过智能技术生成

分支和循环

一.分支结构(if语句)

1.什么时候使用if语句

如果某一段代码需要在满足条件的时候才执行就使用if语句。

2.怎么使用if语句
2.1 if单分支结构 - 满足条件执行某个操作,不满足就不执行

语法:

if 条件语句:
    代码块

说明:

  • if - 关键字;固定写法
  • 条件语句 - 任何有结果的表达式(具体的数据,除了赋值语句以外的运算表达式、函数调用表达式)
  • : - 固定写法
  • 代码块 - 和if保持一个缩进的一条或者多条语句;需要在满足条件才会执行的代码。

执行过程:
判断条件语句是否为True(如果不是布尔就看条件语句结果的布尔值是否为True),为True就执行if里面的代码块,否则不执行。
练习1:根据输入的数据值打印偶数

num = int(input('输入一个整数:'))
if num % 2 == 0:
    print('偶数')

if not num % 2:
    print('偶数')

练习2:判断一个字符串是否为空串

str = ' '
if str:
	print('不是空串')
2.2双分支结构 - 满足条件执行某个操作,不满足执行另一个操作

语法:

if 条件语句:
    代码块1(满足条件要执行的代码)
else:
    代码块2(条件不满足的时候要执行的代码)

执行过程:
先判断条件语句是否为True(如果不是布尔就转换成布尔),如果为True就执行代码块1,否则执行代码块2。
练习1:根据年龄的值打印成年或者未成年

age = int(input('请输入年龄:'))
if age >= 18:
    print('成年')
else:
    print('未成年')

练习2:判断一个三位数是否是水仙花数(各位数的立方和刚好等于这个数的本身),打印是或者不是

num1 = int(input('请输入一个数:'))
if (num1 % 10)**3 + (num1 // 10 % 10)**3 + (num1 // 100)**3 == num1:
    print('是水仙花数')
else:
    print('不是水仙花数')
2.3 if多分支结构 - 根据不同的条件执行不同的操作

语法:

if 条件语句1:
   代码块1
elif 条件语句2:
    代码块2
elif 条件语句3:
    代码块3
...
else:
    代码块N

执行过程:
先判断条件语句1是否为True,如果是就执行代码块1,然后if语句结构直接结束;否则就判断条件语句2是否为True,如果是就执行代码块2,然后整个if语句结束;
以此类推。
如果前面所有的条件语句都不成立,就执行else后面的代码块N。
练习:根据每个月的收入情况判断这个月的伙食。

income = 1000
if income < 1000:
    print('吃土')
elif income < 2000:
    print('吃馒头')
elif income < 5000:
    print('吃面')
elif income < 10000:
    print('吃米饭')
else:
    print('吃火锅')
3.python中的三目运算符

c中的三目运算符 - ?:
表达式1?表达式2:表达式3 - 判断表达式的值是否为真,如果是整个运算的结果就是表达式2的值,否则整个运算的结果是表达式3的值。

int age = 18;
int result = age>=18?"成年":"为成年";

python中的三目运算符 - 是通过if-else来实现c中?:的功能
表达式2 if 表达式1 else 表达式3 - 判断表达式1的值是否为True,如果是整个运算的结果为表达式2的值,否则为表达式3的值。

ge = 18
result = '成年' if age >= 18 else '未成年'
4.if嵌套 - 在一个if语句中嵌套其他的if语句

练习:判断一个数是否是偶数,如果是打印偶数,否则打印奇数;然后再判断这个是否能被4整除,如果能打印4的倍数。

num = int(input('请输入一个整数:'))
if num % 2 == 0:
    print('偶数')
    if num % 4 == 0:
        print('4的倍数')
else:
    print('是奇数')

二.for循环

1.for循环

语法:

for 变量 in 序列:
	循环体

说明:

  • for - 关键字;固定写法
  • 变量 - 可以是已经定义过的变量,也可以是没有定义过的变量(常用)
  • in - 关键字固定写法
  • 列 - python中容器型数据类型的数据,例如:字符串、列表、元组、集合、字典、迭代器、生成器、range等
  • : - 固定写法
  • 循环体 - 和for保持一个缩进的一条或者多条语句;需要重复执行的代码

执行过程:
让变量去 序列中取值,一个一个的取,取完为止,每取一个值执行一次循环体。
(for循环的循环次数和序列中的元素个数一样)

or x in 'a b c d':
    print('====')
 # 执行过程;
x = 'a';:print('====')
x = 'b';:print('====')
x = 'c';:print('====')
x = 'd';:print('====')
2.range函数 - 产生数据序列

range(N) - 产生一个0到N-1的数字序列(N是正整数)
range(M, N) - 产生一个M到N-1的数字序列(M,N都是整数;N>M)
range(M, N, step) - 从M开始每次增加step产生下一个数字,到N前为止
例如:

for x in range(4):
    print('x:', x)
 # x: 0,x: 1,x: 2,x: 3

练习1:计算1+2+3+…+100的和

sum1 = 0
for num in range(1, 101):
    sum1 += num
print(sum1)
 # 5050

练习2:统计100 - 300中能被3整除但是不能被4整除的数的个数

count = 0   # 用来保存最后的个数
for a in range(100, 301):
    if a % 3 == 0 and a % 4 != 0:
        # 满足条件的时候加1
        count += 1
print(count)
 # 50

三.while循环

语法:

while 条件语句:
   循环体

说明:

  • while - 关键字;固定写法
  • 条件语句 - 任何有结果的表达式(具体的数据、除了赋值语句以外的运算表达式、函数调用表达式)
  • : - 固定写法
  • 循环体 - 和while保持一个缩进的一条或者多条语句;需要重复执行的代码

执行过程:
先判断条件语句是否为True,为True就执行循环体,执完循环体再判断条件语句是否为True,为True又执行循体,以此类推,如果判断条件语句的结果为False,循环结束。
练习1:编程实现不断从控制台输入数字,直到输入的数字是0就停止。

num = float(input('请输入一个数:'))
while num != 0:
    num = float(input('请输入一个数:'))

四.break、continue和slse

1.continue

continue是循环体中的关键字,只能在循环中使用。当执行循环体的时候,如果遇到了continue,当次循环结束,直接进入下次循环的判断。

2. break

break也是循环体中的关键字,只能在循环中使用。
当执行循环体的时候遇到了break,整个循环直接结束。
python中while正确的打开方式

while True:
    需要重复执行的操作
    if循环结束的条件:
        break
3.else

python中的for和while的完整结构是:for-else结构和while-else结构

1.for-else结构
for 变量 in 序列:
    循环体
else:
    代码块
2.while-else结构
while 条件语句:
    循环体
else:
    代码块

else后面的代码块在循环执行过程中如果遇到了break不会执行,反之就会执行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值