概述
python的循环语句只有二个 while for ,所有的语句都支持嵌套
while 语句:
形式一:
while 条件:
代码块1
形式二:
while 条件:
代码块1
else:
代码块2
死循环,只要条件永远为真
while True:
代码块
循环控制语句:
break : 当循环遇到break时,则终止整个循环
continue: 当循环遇到continue时 ,则终止当前循环开始下一次循环
pass : 占位,什么也不做
** 练习1: 求 1到100之间的和 **
ret = 0
i = 1
while i<=100:
ret = ret + i
#i = i + 1
i += 1
print(ret)
** 练习2: 有一个列表 L = [12,5,65,23,68,84,26],将奇偶数分开 **
方法一:
L = [12,5,65,23,68,84,26]
odd = []
even = []
flag = 0
while flag < len(L):
tmp = L[flag]
if tmp % 2 == 0:
even.append(tmp)
else:
odd.append(tmp)
flag += 1
print(odd)
print(even)
方法二:
L = [12,5,65,23,68,84,26]
odd = []
even = []
while L:
tmp = L.pop(0)
if tmp % 2 == 0:
even.append(tmp)
else:
odd.append(tmp)
print(odd)
print(even)
** 练习3 斐波那契数列(后一位是前两位的和: 1 1 2 3 5 ....)输出其中的某一位,比如指定第6位,则输出数列中的第6个数。 **
count = 8
fib = [1,1]
while len(fib) < count:
new = fib[-1] + fib[-2]
fib.append(new)
print(fib)
print(fib[count-1])
** 练习4 学生信息字典 : studict = {'Tom':[18801116666,20],'Lily':[18801116688,22],'Harry':[18801117777,18]}
需求:用户执行程序,输出所有年龄大于19岁的“学生名-年龄-电话” **
studict = {'Tom':[18801116666,20],'Lily':[18801116688,22],'Harry':[18801117777,18]}
while studict:
tmp = studict.popitem()
age = tmp[1][1]
if age > 19:
print('{} {} {}'.format(tmp[0],*tmp[1]))
** 练习5 找出所有的水仙花数(一个三位数,个位数的三次方,十位数的三次方,百位数的三次方相加等于这个数本身) **
flag = 100
while flag < 1000:
bai = flag % 1000 // 100
shi = flag % 100 // 10
ge = flag % 10 // 1
tmp = bai ** 3 +shi ** 3 + ge ** 3
if tmp == flag:
print(tmp)
flag += 1
** 练习6 判断一个数是不是质数(只能被1和它本身整除的数,又称素数) **
num = 9
flag = 2
while flag < num:
if num % flag == 0:
print(False)
break
flag += 1
else:
print(True)
** 练习7 猜数游戏,产生一个1-100之间的随机数,让用户猜,如果数大了就说数太大了,如果数小了就说数小了,如果猜对了就说猜对了 **
产生随机数的方法
from random import randint
randnum = randint(1,100)
参考:
from random import randint
randnum = randint(1,100)
while True:
guess = input('请猜一个1到100之间的整数: n')
guess = guess.strip()
if not guess.isdigit():
print('{} 不合法,必须为一个整数'.format(guess))
continue
guess = int(guess)
if guess > randnum:
print('{} 太大了'.format(guess))
elif guess < randnum:
print('{} 太小了'.format(guess))
else:
print('{} 猜对了'.format(guess))
break
** 练习8 猜数游戏,产生一个1-100之间的随机数,让用户猜,如果数大了就说数太大了,如果数小了就说数小了,如果猜对了就说猜对了。
统计用户猜了多少次才猜对的。如果用户猜对了,问一下用户是否要继续 n 为退出,其它任意键为继续 **
最后
以上就是天真牛排为你收集整理的循环与迭代的全部内容,希望文章能够帮你解决循环与迭代所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复