1.昨日回顾
1. 运算符
数学运算符(+,-,,/,//,*),比较运算符(>,<,==,!=,<=,>=),逻辑运算符(and,or,not),赋值运算符(=,+=,-=...)
2. 数字类型
int(整型),float(浮点型),bool(布尔),complex(复数)
type(数据)查看数据类型
isintance(数据,类型)判断数据类型
类型转换 :类型名(数据)
input(),得到的数据都是字符串类型,应用时需要根据情况转换数据类型
3.if
语法:
if 条件语句:
语句块
if 条件语句:
语句块
else:
语句块2
if 条件语句:
语句块
elif 条件语句2:
语句块2
2. python中的循环结构有两种:for循环,while循环
1.for循环
a.语法
for 变量名 in 序列:
循环体
b.说明
for - 关键字,固定写法
变量名 - 和声明变量时候的要求一样
in - 关键字,固定写法
序列 - python中的序列有:字符串,列表,元祖,字典,集合,range, 生器和迭代器等
: - 固定写法
循环体 - 和for保持一个缩进的一条或者多条语句
c.执行过程
当程序执行带for循环的时候:让变量去序列中取值,一个一个的取,取完为止.每取一个值,执行一次循环体
例子
for a in 'abcdef':
print(a)
print('=====')
2.range函数
a.range(N) - N是正整数,产生0~N-1的所有整数
注意:xpange是python2.x的语法,在python3.x无效
例子:
for num in range(10):
print(num)
b.range(M,N) - M,N都是整数,并且N>M,产生M~N-1的所有整数
例子:
for num in range(100,1000):
print(num)
c.range(M,N,S) - M,N,S都是整数,产生M~N-1,每次加S来产生下一个数的所有数
例子:
for num in range(0,101,2):
print(num)
# 联系:计算1+2+3+...+100的和
sum1=0
for num in range(1,101):
sum1+=num
print(sum1)
# 解析
sum1 = 0
num = (1,2,3,...,100)
num = 1
sum1 += num == 0 + 1 == 1
num = 2
sum1 += num == 1 + 2 == 3
...
num = 100
sun1 += num ==...==5050
print(sun1) #打印结果5050
练习:计算248...20的结果
product = 1
for num in range(2, 21, 2):
product *= num
print(product)
练习:计算0-100中所有能够被3或者5整除的和
sum2 = 0
for num in range(0,101):
if num%3==0 or num%5==0:
num2=num
# print('3或者5的倍数', num2)
sum2+=num2
print(sum2)
1.while
a.语法
while 条件语句:
循环体
** b.说明:**
while - 关键字,固定写法
条件语句 - 可以是数据,变量,运算表达式等.不能是赋值运算
: - 固定写法
循环体 - 和while保持一个缩进的一条或者多条语句(会被重复执行)
c.执行过程:
先判断条件语句是否为True,为True就执行一次循环体,
执行玩循环体在判断条件语句是否为True,为True又执行一次循环体,
执行玩循环体在判断条件语句是否为True,为True又执行一次循环体,
......
直到判断条件语句的结果为False,整个循环直接结束
注意!!两个极端:
1.当条件语句永远为True,会造成死循环的现象
2.一开始条件语句的结果就是False,循环一次都不会执行
练习:用while循环打印10行"=="
num=0
while num<10:
num+=1
print('==',num)
num = 0
count < 10 0 < 4 True count += 1 == 1 print('==')
count < 10 1 < 4 True count += 1 == 2 print('==')
......
count < 10 10 < 10 False #结束循环
练习1:使用while循环打印0-10
num=0
while num<11:
print('num=',num)
num+=1
练习2:使用while循环打印11-20
num2=10
while num2<20:
num2+=1
print('num2=',num2)
练习3:使用while循环打印2-40的偶数
num3=0
while num3<40:
num3+=2
print('num3=',num3)
练习4:求2-40的偶数和
num3=0
sum1=0
while num3<40:
num3+=2
sum1+=num3
print(sum1)
练习5:不断输入,直到输入是100为止
result = int(input('请输入数字'))
while result != 100:
result = int(input('请输入数字'))
print('输入正确')
2.补充,随机数
导入random模块,random是python内置的一个专门用来产生和处理随机数的模块
random.randomint(M,N) - 产生一个M~N的随机数,要求M,N都是整数,并且N>M
import random
random_num = random.randint(0,10) #产生一个0~10的随机数
练习6:猜数字
print('=====================')
print(' 游戏开始')
import random
random_num = random.randint(1,100)
num = 1
result = int(input('请输入数字'))
while result != random_num:
# 给出提示
if result > random_num:
print('输入数字偏大')
else:
print('输入数字偏小')
num+=1
# 重新输入
result = int(input('请输入数字'))
print('正确:共猜了',num, '次')
if num<4:
print('真厉害')
elif num<8:
print('一般般啦')
else:
print('请再接再厉')
print(' 游戏结束')
print('=====================')
3.for循环和while循环的选择
a.遍历(一个一个的取)序列元素用for循环
** b.循环次数确定的时候用for循环**
c.死循环和循环次数不确定的时候用while循环
循环中的关键字
1.continue
用法:continue是关键字,只能出现在循环体中
功能:执行循环体的时候,如果遇到continue,就直接结束当次循环,直接进入下次循环的判断
例子:
for x in range(10):
if x%2 == 0:
continue
print(x)
continue
print('===')
2.break
用法:break是关键字,只能出现在循环体中
功能:执行循环体的时候,如果遇到break,整个循环直接直接结束
例子
for x in range(10):
print(x)
break
print('!!!!')
练习:从0+1+2+....求看到什么时候和超过1000000
num = 0
sum1 = 0
while True :
num += 1
sum1 += num
if sum1 > 1000000:
break
print(num,sum1)
3.else
a.语法:
'''
for 变量 in 序列:
循环体
else:
语句块
'''
'''
while 条件语句:
循环体
else:
语句块
'''
b.执行过程:如果循环自然死亡,else对应的语句块会执行;
如果循环遇到break而结束,else对应的语句块不会执行.
例子:
for x in range(5):
print(x)
break
else:
print('循环结束')
嵌套循环
循环嵌套:在循环中又有循环结构
执行过程:外循环执行一次,内循环执行完