python循环语句
循环类别
- while 循环
- for循环
- 嵌套循环
循环控制语句
-
break --在语句块执行过程中终止循环,并且跳出整个循环
-
continue --在语句块执行过程中终止当前循环,跳出该次循环,执行下一次循环。
-
pass --pass是空语句,是为了保持程序结构的完整性。
# 代码 numbers = [1,11,2,4,56,35,46,23,48] even = [] odd = [] while len(numbers)>0: number = numbers.pop() if(number %2 ==0): even.append(number) else: odd.append(number) print('原列表由偶数构成的列表为{},由奇数构成的列表是{}'.format(even,odd)) # 运行结果 原列表由偶数构成的列表为[48, 46, 56, 4, 2],由奇数构成的列表是[23, 35, 11, 1]
# 代码 people = ['Anna','Piter','Katte','Luna'] for index in range(len(people)): print('当前点到姓名是:{},位于第{}位'.format(people[index],index+1)) # 运行结果 当前点到姓名是:Anna,位于第1位 当前点到姓名是:Piter,位于第2位 当前点到姓名是:Katte,位于第3位 当前点到姓名是:Luna,位于第4位
# 判断一个大于2的正整数是否为质数 try: num = eval(input('请输入任意一个整数:')) except: print('请输入一个数!') if type(num) == int: pass if num < 3: print('请输入一个大于2的正整数!') else: print('请输入一个整数!') for n in range(2,num): if num % n == 0: print('数字{}不是质数,因为可被{}整除'.format(num, n)) break else: continue else: print('数字{}是质数'.format(num)) #运行结果 请输入任意一个整数:53 数字53是质数 # 用while循环 # 获取用户输入的数,判断是否是质数 num = int(input('输入一个任意的大于1的整数:')) i=2 # 创建一个变量,记录是否是质数,默认num是质数 flag = True while i < num: # 如果num能被i整除,说明num不是质数 if num % i ==0 : # 只要num不是质数,将flag的值修改为 False flag = False i +=1 if flag: print(num,'是质数') else: print(num,'不是质数')
# 得出一个正整数的阶乘 try: num = eval(input('请输入任意一个整数:')) except: print('请输入一个数!') if type(num) == int: pass if num <1: print('请输入一个正整数!') else: print('请输入一个整数!') jc = 1 for i in range(1,num+1): jc *= i print('所输入的数{}的阶乘是{}'.format(num,jc)) # 运行结果: 请输入任意一个整数:5 所输入的数5的阶乘是120
# 输入两个数值,求两个数的最大公约数和最小公倍数 m = eval(input('请输入一个正整数:')) n = eval(input('请再输入一个正整数:')) #比较两数大小 m,n=(m,n) if m > n else (n,m) if m % n == 0: print('{}和{}的最大公约数是{},最小公倍数是{}'.format(m,n,n,m)) # 最大公约数的范围在1~n之间;最大公约数就是两数能整除的最大的数; else: for x in range(n,1,-1): if n%x==0 and m%x==0: num1=x # 最小公倍数是两数成绩除于最大公约数 num2=int(m*n/num1) print('{}和{}的最大公约数是{},最小公倍数是{}'.format(m,n,num1, num2)) # 运行结果 请输入一个正整数:14 请再输入一个正整数:20 20和14的最大公约数是2,最小公倍数是140
# 猜数字游戏 import random num = random.randint(1, 100) for i in range(1,7):# 有六次机会 guess = int(input("plese guess:")) if guess > num: print("太大了,可用次数剩余%d"%(6-i)) elif guess < num: print("太小了,可用次数剩余%d"%(6-i)) else: print("猜对了!") exit() else: print("可用次数为0,正确答案是{}".format(num)) # 运行结果 plese guess:50 太小了,可用次数剩余5 plese guess:75 猜对了!