python—for循环语句、while循环语句

    xiaoxiao2023-11-16  141

    1 、range() 函数用法

    range() 函数可创建一个整数列表,一般用在 for 循环中。 格式:range(start, stop[, step]) start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5); stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5 step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

    示例:

    >>> range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(0,10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(0,10,1) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> range(0,10,2) [0, 2, 4, 6, 8] >>> range(1,10,2) [1, 3, 5, 7, 9]

    2 、for循环语句

    for循环可以遍历任何序列的项目,如一个列表或者一个字符串。 格式1:

    for <变量> in <序列>: <循环需要执行的代码>

    格式2:

    for <变量> in <序列>: <循环需要执行的代码> else : <全部循环结束后要执行的代码> # else 之后的操作必须是for语句遍历序列的每一个项目之后,才能执行,如果中途退出循环则不执行。

    应用练习:

    1 求1~100之和 :

    result = 0 for num in range(1,101): result +=num print(result)

    输出结果:5050

    2 求1~100奇数之和 :

    result = 0 for num in range(1,101,2): result +=num print(result)

    输出结果:2500

    3 求1~100偶数之和 :

    result = 0 for num in range(2,101,2): result +=num print(result)

    输出结果:2550

    4 用户输入一个数字,求该数的阶乘:

    max = int(input('please input the unmber: ')) result = 1 for num in range(1,max+1,): result *=num print(result)

    效果演示:

    [kiosk@foundation47 python]$ python3 shiyan.py please input the unmber: 4 24

    5 用户登陆程序

    1.输入用户名和密码2.判断用户名和密码是否正确(‘name==root’,'passwd=‘westos’)3.为了防止暴力破解,登陆次数仅有三次,如果超过三次机会,报错 for i in range(3): username = input('请输入用户名称 :') passwd = input('请输入用户密码 :') if username == 'root' and passwd == 'westos' : print('输入正确,请登陆') break else : times = 2-i print('输入错误!剩余登陆次数 %d' %times) else: print('连续登陆失败3次,请等待15分钟后重新登陆')

    效果演示:

    [kiosk@foundation47 python]$ python3 shiyan.py 请输入用户名称 :studnet 请输入用户密码 :redhat 输入错误!剩余登陆次数 2 请输入用户名称 :hahah 请输入用户密码 :lelele 输入错误!剩余登陆次数 1 请输入用户名称 :haha 请输入用户密码 :haha 输入错误!剩余登陆次数 0 连续登陆失败3次,请等待15分钟后重新登陆 [kiosk@foundation47 python]$ python3 shiyan.py 请输入用户名称 :root 请输入用户密码 :westos 输入正确,请登陆

    3、break、continue、exit()

    break:跳出整个循环,不会再循环后面的内容 continue:跳出本次循环,continue后面代码不会执行, 但是循环依然继续的. exit():结束程序的运行

    break 示例 :

    for i in range(10): if i == 5: break else : print(i) 运行结果: [kiosk@foundation47 python]$ python3 shiyan.py 0 1 2 3 4

    continue 示例 :

    for i in range(10): if i == 5: continue else : print(i) 运行结果: [kiosk@foundation47 python]$ python3 shiyan.py 0 1 2 3 4 6 7 8 9

    4 命令行提示符的实现

    import os 加载os模块

    在Python中可以方便地使用os模块运行其他的脚本或者程序,这样就可以在脚本中直接使用其他脚本,或者程序提供的功能,而不必再次编写实现该功能的代码。os模块中的system()函数可以方便地运行其他程序或者脚本os.system(command) 使用格式 import os for i in range(10000): cmd = input('[toto@toto47 python]$' ) if cmd : if cmd == 'quit': break else: os.system(cmd) else: continue

    效果演示:

    [kiosk@foundation47 python]$ python3 shiyan.py [toto@toto47 python]$ [toto@toto47 python]$ [toto@toto47 python]$绿色 sh: $'\347\273\277\350\211\262': command not found [toto@toto47 python]$ls 0523 day 02 my day01 shiyan.py [toto@toto47 python]$pwd /home/kiosk/PycharmProjects/python [toto@toto47 python]$quit [kiosk@foundation47 python]$

    练习:

    1 输入两个数值:求两个数的最大公约数和最小公倍数。

    num1 = int(input('请输入第一个数: ')) num2 = int(input('请输入第二个数: ')) num = min(num1,num2) for i in range(1, num + 1): if num1 % i == 0 and num2 % i == 0: 最大公约数=i print('%d 和 %d的最大公约数是%d' %(num1,num2,最大公约数)) 最小公倍数 = (num1 * num2) / 最大公约数 print('%d 和 %d的最小公倍数是%d' %(num1,num2,最小公倍数))

    运行演示:

    [kiosk@foundation47 day 02]$ python3 2.1.py 请输入第一个数: 8 请输入第二个数: 6 8 和 6的最大公约数是2 8 和 6的最小公倍数是24

    5 while 循环语句

    1 格式:

    while 条件满足: 满足条件执行的语句 else: 不满足条件执行的语句

    ** 2 while 死循环 :** 只要满足 while的条件永远为真,就会进入无限循环 例如:

    while True: print('一直循环')

    3 while嵌套 \t :在控制台输出一个制表符,协助我们在输出文本的时候在垂直方向保持对齐 \n:在控制台输出一个换行符 \:转译 ,将特殊字符转译成普通字符

    练习:99乘法表

    第一种:

    cro = 1 while cro <= 9: col = 1 while col <=cro: print('%d * %d = %d\t' %(cro,col,cro*col),end='') col += 1 print('') cro += 1

    运行演示 :

    [kiosk@foundation47 day 02]$ python3 2.20.py 1*1=1 2*1=2 2*2=4 3*1=3 3*2=6 3*3=9 4*1=4 4*2=8 4*3=12 4*4=16 5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81

    第二种 :

    cro = 9 while cro > 0 : col = cro while col > 0 : print('%d*%d=%d\t' %(cro,col,cro*col),end='') col -=1 print('') cro -=1

    效果演示:

    [kiosk@foundation47 day 02]$ python3 2.2.py 9*9=81 9*8=72 9*7=63 9*6=54 9*5=45 9*4=36 9*3=27 9*2=18 9*1=9 8*8=64 8*7=56 8*6=48 8*5=40 8*4=32 8*3=24 8*2=16 8*1=8 7*7=49 7*6=42 7*5=35 7*4=28 7*3=21 7*2=14 7*1=7 6*6=36 6*5=30 6*4=24 6*3=18 6*2=12 6*1=6 5*5=25 5*4=20 5*3=15 5*2=10 5*1=5 4*4=16 4*3=12 4*2=8 4*1=4 3*3=9 3*2=6 3*1=3 2*2=4 2*1=2 1*1=1

    第三种 :

    cro = 9 while cro > 0 : col = 9 while col > 0 : if col > cro : print(' \t' ,end='') else: print('%d*%d=%d\t' %(cro,col,cro*col),end='') col -=1 print('') cro -=1

    效果演示:

    [kiosk@foundation47 day 02]$ python3 2.3.py 9*9=81 9*8=72 9*7=63 9*6=54 9*5=45 9*4=36 9*3=27 9*2=18 9*1=9 8*8=64 8*7=56 8*6=48 8*5=40 8*4=32 8*3=24 8*2=16 8*1=8 7*7=49 7*6=42 7*5=35 7*4=28 7*3=21 7*2=14 7*1=7 6*6=36 6*5=30 6*4=24 6*3=18 6*2=12 6*1=6 5*5=25 5*4=20 5*3=15 5*2=10 5*1=5 4*4=16 4*3=12 4*2=8 4*1=4 3*3=9 3*2=6 3*1=3 2*2=4 2*1=2 1*1=1

    第四种 :

    cro = 1 while cro <= 9 : col = 9 while col > 0 : if cro < col : print(' \t' ,end='') else: print('%d*%d=%d\t' %(cro,col,cro*col),end='') col -=1 print('') cro +=1

    效果演示:

    [kiosk@foundation47 day 02]$ python3 2.4.py 1*1=1 2*2=4 2*1=2 3*3=9 3*2=6 3*1=3 4*4=16 4*3=12 4*2=8 4*1=4 5*5=25 5*4=20 5*3=15 5*2=10 5*1=5 6*6=36 6*5=30 6*4=24 6*3=18 6*2=12 6*1=6 7*7=49 7*6=42 7*5=35 7*4=28 7*3=21 7*2=14 7*1=7 8*8=64 8*7=56 8*6=48 8*5=40 8*4=32 8*3=24 8*2=16 8*1=8 9*9=81 9*8=72 9*7=63 9*6=54 9*5=45 9*4=36 9*3=27 9*2=18 9*1=9
    最新回复(0)