python之循环

本文详细介绍了Python中的For循环和While循环的使用,包括基础用法、求和、阶乘、数字组合、命令行提示符、乘法表、用户登录管理等实例。同时,探讨了循环嵌套和猜数字游戏,为Python初学者提供了丰富的实践指导。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目标程序的三大流程		
	1.while 循环的基本使用		
	2.break 和 continue		
	3.while 循环嵌套	
在程序开发中,一共有三种流程方式:		
	顺序:从上向下,顺序执行代码		
	分支:根据条件判断,决定执行代码的分支		
	循环:让特定代码重复执行(解决程序员重复工作)

一.For循环

1.基本用法
for i in range(5):
	print(i)

在这里插入图片描述

2.分别求1~100内奇数偶数之和
# 求1~100 之间的所有偶数之和
sum1 = 0
#   从2开始,以2为间距输出
for i in range(2,101,2):    
	sum1 += i
print(sum1) 
# 求1~100之间的所有的奇数之和
sum2 = 0
for i in range(1,101,2):    
	sum2 += i
print(sum2)

在这里插入图片描述

3.求阶乘
# 求阶乘
num = int(input('请输入一个数字:'))
res = 1
for i in range(1, num + 1):   
	res*=i
print('%d的阶乘为:%d' %(num,res))

在这里插入图片描述

4.有1,2,3,4四个数字,求这四个数字能生成多少个互不相同且无重复数字的三位数
sum = 0
for i in (1,2,3,4):
    for j in (1,2,3,4):
            for k in (1,2,3,4):
                        if i != j and j!= k and i != k: 
                                       sum += 1
print('共有%d种组合' %sum)

在这里插入图片描述

5.实现命令行提示符
import os
for i in range(1000):
    cmd = input('[kiosk@test ~]$ ')
        if cmd: 
           if cmd == 'exit':
		break 
           else: 
		print('run %s' %(cmd)) 
                os.system(cmd) 
	else:
	    Continue

在这里插入图片描述

6.9*9乘法表
for i in range(1,10):
    for j in range(1,i+1):
            print('%d * %d = %d\t' %(i,j,i*j),end='')
    print()

在这里插入图片描述

7.用户登录管理系统
用户登录需求:    
1.输入用户名和密码;    
2.判断用户名和密码是否正确(name='root',passwd='westos')
3.登录仅有三次机会,超过3次会报错

for i in range(3):
    user = input('请输入用户名:')
    passwd = input('请输入密码:')    
    if user=='root' and passwd == 'westos':        
        print('%s用户登录成功' %user)        
        break    
    else:        
        print('密码错误,请重新输入密码,您还剩%d次机会' %(2-i))
else:
    print('超过三次,登录失败')

在这里插入图片描述

8.求最大公约数和最小公倍数
输入两个数值:    
求两个数的最大公约数和最小公倍数
最小公倍数=(num1 * num2) / 最大公约数

# 输入两个数字
num1=int(input('Num1:'))
num2=int(input('Num2:')) 
# 找出两个数中的较小者
min_num = min(num1,num2) 
# 确定最大公约数
for i in range(1,min_num+1):    
    if num1 % i ==0 and num2 % i ==0:        
        max_commer = i
# 求最小公倍数
min_commer =int(num1 * num2)/max_commer 
print('%s 和 %s 的最大公约数为%s' %(num1,num2,max_commer))
print('%s 和 %s 的最小公倍数为%s' %(num1,num2,min_commer))

在这里插入图片描述

二.While循环

  循环的作用就是让指定的代码重复的执行,while 循环最常用的应用场景就是让执行的代码按照
指定的次数重复执行

while 条件():    
    条件满足时,做的事情1    
    条件满足时,做的事情2
    ......
1.基本用法
# 定义一个整数变量,记录循环的次数
i=1
# 开始循环
while i <= 3:    
# 希望循环内执行的代码    
    print('hello python')    
    # 处理计数器
    i+=1

在这里插入图片描述

2.死循环
while True:
    print('hello python')
3.求1~100之间数字的和
# 定义记录循环次数的变量
i = 0
# 定义结果变量
result = 0
while i <= 100:    
    result+=i    
    # 处理计数器    
    i+=1
# 输出结果
print('1~100之间的数字之和为:%d' %result)

在这里插入图片描述

4.用户登录管理
i=0
while i < 3 :    
    user = input('请输入用户名:')    
    passwd= input('请输入密码:')    
    if user == 'root':        
        if passwd=='westos':            
            print('登录成功')            
            break        
        else:            
            print('密码错误,你还有%s次机会' %(2-i))            
            i+=1    
    else:        
        print('用户不存在,你还有%d次机会' %(2-i))
else:
    print('已经超过三次,登录失败')

在这里插入图片描述

5.while 循环嵌套
while 里面还有 while 	
循环嵌套演练
1.在控制台连续输出五行*,每一行星号的数量依次递增	
2.完成 5 行内容的简单输出	分析每行内部的*应该如何处理
输出
*
*** 
***** 
*******

row = 1
while row  <= 5:    
    print '*' * row    
    row += 1  
row1 = 1
while row1 <= 5:    
    col = 1    
    while col <= row1:        
        col += 1        
        print '*',    
     print ''    
     row1 += 1
6.猜数字游戏
猜数字游戏:    
1.系统随机生成一个1~100的数字;    
2.用户共有5次机会猜;    
3.如果用户猜测数字大于系统给出的数字,打印"too big"    
4.如果用户猜测数字小于系统给出的数字,打印"too small"    
5.如果用户猜测的数字等于系统给出的数字,打印"恭喜中奖",并退出循环

import random
num = random.randint(1,100)
i=1
while i <= 5:    
    player = int(input('请猜数字:'))    
    if player > num:        
        print('too big,please one more again')    
    elif player < num:        
        print('too small,please one more again')    
    else:        
        print('恭喜你猜对了,共猜了%d次' %i)        
        break    
        i+=1    
    if i > 5:        
        print('很遗憾,您没有猜对,游戏结束')

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值