while循环
while条件:
条件满足时﹐做的事情1
条件满足时﹐做的事情2
条件满足时﹐做的事情3
....................
猜数字练习
import random
number=random.randint(1,100)
print(number)
i=1;
your_number = int(input('请猜'))
while your_number!=number:
if your_number>number:
i = i + 1
your_number = int(input('猜大了,再猜'))
elif your_number<number:
i = i + 1
your_number = int(input('猜小了,再猜'))
print('猜对了,一共猜了%d次'%i)
while循环嵌套
在即将完成的案例中,我们需要使用print语句,输出不换行的功能,非常简单,实现方式
print( "Hello", end=' ' )
print( "World", end=' ' )
HelloWorld
如图,在print语句中,加上end=''即可输出不换行了
九九乘法表
i=1
j=1
# while i<=9:
# j=i
# while j<=9:
# print('%d*%d=%d\t'%(i,j,i*j),end='')
# j=j+1
# print('')
# i=i+1
while i<=9:
j=1
while j<=i:
print('%d*%d=%d\t'%(j,i,j*i),end='')
j=j+1
print('')
i=i+1
for循环
同while循环不同,for循环是无法定义循环条件的。只能从被处理的数据集中,依次取出内容进行处理。
所以,理论上讲,Python的for循环无法构建无限循环(被处理的数据集不可能无限大)
i=0;
name='xkkkkkwidjowa;grgheuriptaoiargijviwpuehfisvbglisueryuifayleurag'
for x in name:
if x=='k':
i=i+1
print(i)
range语句
语法1:
range(num)
获取一个从0开始,到num结束的数字序列(不含num本身)如range(5)取得的数据是:[0,1,2,3,4]
语法2:
range(num1,num2)
获得一个从num1开始,到num2结束的数字序列(不含num2本身别)如,range(5,10)取得的数据是∶[5,6,7,8,9]
语法3:
range(num1,num2, step)
获得一个从num1开始,到num2结束的数字序列(不含num2本身)数字之间的步长,以step为准( step默认为1)
如,range(5,10,2)取得的数据是∶[5,7,9]
for循环嵌套
for循环打印九九乘法表
for i in range(1,10):
for j in range(1,i+1):
print('%d*%d=%d\t'%(j,i,j*i),end='')
print()
break和continue
如上图continue只影响内层的for循环
嵌套的break只结束break所在的循环,外围的循环跳不出去
1.continue的作用是:
中断所在循环的当次执行,直接进入下一次
2.break的作用是:
直接结束所在的循环
3.注意事项:
. continue和break,在for和while循环中作用一致
·在嵌套循环中,只能作用在所在的循环上,无法对上层循环
起作用
综合练习
import random
sum=10000
for i in range(1,21):
jixiao=random.randint(1,10)
if jixiao<5:
print('员工%d绩效为%d,不发工资'%(i,jixiao))
else:
sum=sum-1000
print('向员工%d绩效%d发放工资1000元,余额还剩%d' % (i, jixiao, sum))
if sum<=0:
print('没钱了,不发了')
break