python基础语法第三天

一.if语句

1.什么时候使用if语句
1.1.如果某一段代码需要在满足条件的时候才执行使用if语法
2.如何使用if语句的语法
2.1 if单分支结构 —— 满足条件执行某个操作,不满足就不执行

“”"
语法:
if 条件语句:
代码块(if语句内的代码)
其他代码(if外的代码)

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

执行过程:
判断条件语句是否为True(如果不是布尔值就看条件语句结果的布尔值是否为True),为True就执行if内的代码块,否则不执行。

“”"

1.条件语句可以是除了赋值语句以外的任何表达式

if 100:
    pass
if 'abc':
    pass
if 100 + 200 / 4 > 240 or 100 < 500:
    pass

##### 报错:
##### if num = 100:
#####     pass

##### 报错:
##### num = 100
##### if num += 200:
#####     pass

2.代码块和执行过程

print('==========分割线==========')
if 100 < 200:
    print('=====')
    print('+++++')

print('~~~~~')
练习:根据输入的数据值打印 偶数
num = int(input(‘请输入一个整数:’))
if num % 2 ==0:
print(‘偶数’)

if not num % 2:
print(‘偶数’)

if num % 2:
print(‘奇数’)
判断一个字符串是否是空串
str1 = ''
if str1:
    print('不是空串!')

2.2 if双分支结构 —— 满足条件执行某个操作,不满足执行另外一个操作

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

执行过程:
判断条件语句是否为True(如果不是布尔就转换成布尔),如果为True就执行代码块1,否则执行代码块2

“”"

练习:根据年龄的值打印 成年 或者 未成年
age = 16
if age < 18:
    print('未成年')
else:
    print('成年')
练习2:判断一个三位数是否是水仙花数(各位数的立方和刚好等于这个数本身),打印 是水仙花数 或者不是水仙花数
153 = 13 + 53 + 3**3
num = 153
g = num % 10
s = num // 10 % 10  # num % 100 // 10
b = num // 100
if g**3 + s**3 + b**3 == num:
    print(num, '是')
else:
    print(num, '不是')

2.3 if多分支结构 —— 根据不同的条件执行不同的操作

“”"

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

执行过程:
先判断条件语句1是否为True,如果是True就执行代码块1,然后if语句结构直接结束;
否则就判断条件语句2是True,如果为True就执行代码块2,然后整个if语句结构直接结束;
否则就判断条件语句2是True,如果为True就执行代码块2,然后整个if语句结构直接结;
以此类推…
如果前面所有的条件语句都不成立,就直接else后面的代码块

“”"

练习:根据每个月的收入判断这个月的伙食
income = 50000
if income < 1000:
    print('吃土')
elif income < 1500:
    print('吃面')
elif income < 5000:
    print('馒头')
elif income < 10000:
    print('吃饭')
else:
    print('吃鸡')

3.python中的三目运算符

“”"
1)c中的三目运算写法: ?:
表达式1?表达式2:表达式3 —— 判断表达式1的值是否为真(True),如果是整个运算的结果就是表达式2的值,否则整个运算的结果是表达式3的值
int age=18;
int result = age>=18?“成年”:“未成年”;

2)python中的三目运算符 —— 通过if、else来实现C中?:的功能
表达式2 if 表达式1 else 表达式3 —— 判断表达式1的值是否为True(真),如果是整个运算的结果就是表达式2的值,否则整个运算的结果是表达式3的值

“”"

age = 8
result = '成年' if age >= 18 else '未成年'
print(result)

score = 69
score = '及格' if score >= 60 else '不及格'
print(score)

4.1 if嵌套 —— 在一个if语句中嵌套其他的if语句

判断一个数是否是偶数,如果是打印’偶数’,否则打印’奇数’;然后再判断这个数是否能4整除,如果能打印4的倍数
m4 = 20
if m4 % 2 == 0:
    if m4 % 4 == 0:
        print('4的倍数')
else:
    print('奇数')
print(m4)

二.for循环

1.for循环

“”"
语法:
for 变量 in 序列:
循环体

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

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

for num in 'abc':
    print('===')
print(num)
执行过程:

“”"

num = 'a'; print('===');print(num)  # num = a
num = 'b'; print('===');print(num)  # num = b
num = 'c'; print('===');print(num)  # num = c

“”"

2.range函数 - 产生数据序列

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

“”"

##### range(N):
for x in range(4):
    print('x:', x)
练习:print(’!!!’)执行10遍
for _ in range(10):
    print('!!!')

##### range(M, N)
for y in range(10, 100):
    print('y:', y)

for z in range(-100, -10):
    print('z:', z)

##### range(M, N stpe)
for i in range(1, 13, 2):
    print('i:', i)
##### 1,3,5,7,9,11

for j in range(10, 0, -1):
    print('j:', j)
##### 10,9,8,7,6,5,4,3,2,1
练习:计算1+2+3+…+100的和
sum1 = 0
for num in range(1, 101):
    sum1 += num  # sum1 = sum1 + num
print(sum1)

"""
sum1 = 0
num -> 1,2,3,4...+100
num = 1; sum1 += num -> sum1 = sum1+num -> sum1=0+1
num = 2; sum1 += num -> sum1 = sum1+num -> sum1=1+2
num = 3; sum1 += num -> sum1 = sum1+num -> sum1=1+2+3
num = 4; sum1 += num -> sum1 = sum1+num -> sum1=1+2+3+4
......sum1=1+2+3+4...+100
print(sum1)
"""
练习:统计100 ~ 300 中能被3整除但是不能被4整除的数的个数
count = 0    # count用来保存最后的个数
for num in range(100, 301):
    if num % 3 == 0 and num % 4 != 0:
        # 满足条件的时候加1
        count += 1
        # print(num)
print(count)

一.while循环

1.while循环

“”"
语法:
while 条件语句:
循环体

说明:
while - 关键字;固定写法
条件语句 - 和if后面的条件语句要求一样,只要不是赋值语句就可以
: - 固定写法
循环体 - 和while保存一个缩进的一条或者多条语句;需要重复执行的代码

执行过程:
先判断条件语句是否为True,为True就执行循环体,执行完循环体再判断条件语句是否True,
为True又执行循环提,以此类推,如果判断条件语句的结果是False,循环结束。

“”"

while True:
     input('请输入:')

num = 0
while num <= 5:
    print('===')
    num += 1

"""
num = 0 
num <= 4 -> 0 <= 4 -> True: print('===');num += 1 -> num = 1;
num <= 4 -> 1 <= 4 -> True: print('===');num += 1 -> num = 2;
num <= 4 -> 2 <= 4 -> True: print('===');num += 1 -> num = 3;
num <= 4 -> 3 <= 4 -> True: print('===');num += 1 -> num = 4;
num <= 4 -> 4 <= 4 -> True: print('===');num += 1 -> num = 5;
num <= 4 -> 5 <= 4 -> False  (循环结束)

“”"

练习1:编程实现不断从控制台输入数字,直到输入的数字是0就停止。

```python
num = 5
while num != 0:
    num = int(input('请输入:'))

一.break、continue和 else

1.continue

continue是循环提中关键字,只能再循环中使用。
当执行循环体的时候,如果遇到了continue,当次循环结束,直接进入下次循环的判断
```python
for _ in range(5):
    print('===')
    continue
    print('+++')


for x in range(10):
    if x % 2:
        continue
    print(x)

"""
x = 0; if 0 % 0; print(x)
x = 1; if 1%2: continue
x = 2; if 2%2; print(x)
x = 3; if 3%2: continue

“”"

2.break

break也是循环体中的关键字,只能再循环体中使用
当执行循环体的时候,如果遇到break,整个循环直接结束
for _ in range(5):
    print('===')
    break
    print('+++')
python中while正确打开方式

“”"
while True:
需要重复执行的操作
if 循环结果的条件:
break
“”"

while True:
	v = input('请输入:')
		if v == '0':
		break

3.else

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

“”"
for 变量 in 序列:
循环体
else:
代码块

2.while-else结构
while 条件语句:
循环体
else:
代码块

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

"""
for _ in range(5):
    print('===')
    break
    print('+++')
else:
    print('else中的代码块')

num1 = 1
while num1 < 5:
    print('===')
    num1 += 1
    if num1 == 3:
        break
else:
    print('while-else结构')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值