zoukankan      html  css  js  c++  java
  • python 控制语句

    pyhton 控制语句

    程序在一般情况下是按顺序执行的,编程语言提供了各种控制结构,允许复杂的执行路径。循环语句允许我们执行一个语句或语句多次

    if 语句

    Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块,执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true

    复制代码
    if True:
        print("Hello World")
    print("Goog Bye")
    ------------------------
    Hello World
    Goog Bye
    
    
    if False:
        print("Hello Python")
    print("Goog Bye")
    ------------------------
    Goog Bye
    复制代码

    if ... else 语句

    复制代码
    if False:
        print("No executed")
    else:
        print("Executed")
    ------------------------
    Executed
    复制代码

    if..elif...else

    复制代码
    age = int(input("Please your age>>:"))
    if 0 < age and age <= 20:
        print("teenager")
    elif 20 < age and age <= 40:
        print("Man")
    elif 40 < age and age <= 60:
        print("Old")
    else:
        print("Died")
    ------------------------
    Please your age>>:30
    Man
    复制代码

     if 嵌套

    复制代码
    age = int(input("Please your age>>:"))
    if age >= 0:
        if 0 < age and age <= 20:
            print("teenager")
        elif 20 < age and age <= 40:
            print("Man")
        elif 40 < age and age <= 60:
            print("Old")
        else:
            print("Died")
    else:
        print("Your age error")
    -------------------------
    Please your age>>:48
    Old
    复制代码

    while 循环语句

    Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。

    Python中while语句的一般形式:
    while 判断条件:
        语句
    复制代码
    sum = 0
    count = 0
    while count <= 100:
        sum += count
        count += 1
    print(sum)
    -------------------------
    5050
    复制代码
    while无限循环,可以使用 CTRL+C 来中断循环
    while  True:
        print("无限循环")

    for 语句

    for循环可以遍历任何序列的项目(一个列表或者一个字符串等)

    for <variable> in <sequence>:
        <statements>
    else:
        <statements>
    languages = ["C", "C++", "Perl", "Python"] for x in languages: print (x)
    languages = ["C", "C++", "Perl", "Python"]
    for x in languages:
        print (x)

    fruits = ['banana', 'apple', 'mango','tomato','pelar']
    for fruit in range(len(fruits)):
    print('fruit: ',fruits[fruit])
    ------------------------------------------------
    fruit: banana
    fruit: apple
    fruit: mango
    fruit: tomato
    fruit: pelar

    复制代码
    fruits = ['banana', 'apple', 'mango','tomato','pelar']
    for fruit in range(len(fruits)):
        print('fruit: ',fruits[fruit])
    ------------------------------------------------
    fruit:  banana
    fruit:  apple
    fruit:  mango
    fruit:  tomato
    fruit:  pelar
    复制代码

    break 语句

    break 语句可以跳出 for 和 while 的循环体。若遇到break而使得 for 或 while 循环中终止而且 else 块将不执行

    for megs in 'Hello Python':
    if megs == 'y':
    break
    print ('输出的当前字母为 :',megs)
    --------------------------------
    输出的当前字母为 : H
    输出的当前字母为 : e
    输出的当前字母为 : l
    输出的当前字母为 : l
    输出的当前字母为 : o
    输出的当前字母为 :
    输出的当前字母为 : P

    代码示例-for

    复制代码
    for megs in 'Hello Python':
        if megs == 'y':
            break
        print ('输出的当前字母为 :',megs)
    --------------------------------
    输出的当前字母为 : H
    输出的当前字母为 : e
    输出的当前字母为 : l
    输出的当前字母为 : l
    输出的当前字母为 : o
    输出的当前字母为 :  
    输出的当前字母为 : P
    复制代码

    counts = 0
    while counts < 6:
    print("counts:" ,counts)
    if counts == 3:
    break
    counts += 1
    ---------------------------------
    counts: 0
    counts: 1
    counts: 2
    counts: 3

    代码示例-while

    复制代码
    counts = 0
    while counts < 6:
        print("counts:" ,counts)
        if counts == 3:
            break
        counts += 1
    ---------------------------------
    counts: 0
    counts: 1
    counts: 2
    counts: 3
    复制代码

    continue语句

    continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环

    for megs in 'Hello Python':
    if megs == 'y':
    continue
    print ('输出的当前字母为 :',megs)
    --------------------------------
    输出的当前字母为 : H
    输出的当前字母为 : e
    输出的当前字母为 : l
    输出的当前字母为 : l
    输出的当前字母为 : o
    输出的当前字母为 :
    输出的当前字母为 : P
    输出的当前字母为 : t
    输出的当前字母为 : h
    输出的当前字母为 : o
    输出的当前字母为 : n
    -for

    复制代码
    for megs in 'Hello Python':
        if megs == 'y':
            continue
        print ('输出的当前字母为 :',megs)
    --------------------------------
    输出的当前字母为 : H
    输出的当前字母为 : e
    输出的当前字母为 : l
    输出的当前字母为 : l
    输出的当前字母为 : o
    输出的当前字母为 :  
    输出的当前字母为 : P
    输出的当前字母为 : t
    输出的当前字母为 : h
    输出的当前字母为 : o
    输出的当前字母为 : n
    复制代码

    counts = 0
    while counts < 6:
    counts += 1
    if counts == 3:
    continue
    print("counts:", counts)
    --------------------------------
    counts: 1
    counts: 2
    counts: 4
    counts: 5
    counts: 6
    -while

    else子句

    循环语句可以有 else 子句,它在穷尽列表(以for循环)或条件变为 false (以while循环)导致循环终止时被执行,但循环被break终止时不执行

    for...else   

    for 循环中使用 break 语句,break 语句用于跳出当前循环体,且不执行else子句,否则执行else子句

    sites = ["Baidu", "Google","UC","Taobao"]
    for site in sites:
    if site == "Baidu":
    print("李彦宏")
    break
    print("循环数据 " + site)
    else:
    print("没有循环数据!")
    print("完成循环!")
    --------------------------------
    李彦宏
    完成循环!

    复制代码
    sites = ["Baidu", "Google","UC","Taobao"]
    for site in sites:
        if site == "Baidu":
            print("李彦宏")
            break
        print("循环数据 " + site)
    else:
        print("没有循环数据!")
    print("完成循环!")
    --------------------------------
    李彦宏
    完成循环!
    复制代码

    while...else语句

    while … else 在条件语句为 false 时执行则else 的语句块,若遇到break语句则不执行else子句

    count = 0
    while count < 10:
    print (count, " 小于 10")
    count = count + 1
    else:
    print (count, " 大于或等于 10")
    -------------------------
    0 小于 10
    1 小于 10
    2 小于 10
    3 小于 10
    4 小于 10
    5 小于 10
    6 小于 10
    7 小于 10
    8 小于 10
    9 小于 10
    10 大于或等于 10

    复制代码
    count = 0
    while count < 10:
        print (count, " 小于 10")
        count = count + 1
    else:
        print (count, " 大于或等于 10")
    -------------------------
    0  小于 10
    1  小于 10
    2  小于 10
    3  小于 10
    4  小于 10
    5  小于 10
    6  小于 10
    7  小于 10
    8  小于 10
    9  小于 10
    10  大于或等于 10
    复制代码

    pass语句

    Python pass是空语句,是为了保持程序结构的完整性。pass 不做任何事情,一般用做占位语句

    for char in "Hello World":
    if char == 'W':
    pass
    print("执行pass语句")
    print("char: " ,char)
    ------------------------------
    char: H
    char: e
    char: l
    char: l
    char: o
    char:
    执行pass语句
    char: W
    char: o
    char: r
    char: l
    char: d

    复制代码
    for char in "Hello World":
        if char == 'W':
            pass
            print("执行pass语句")
        print("char: " ,char)
    ------------------------------
    char:  H
    char:  e
    char:  l
    char:  l
    char:  o
    char:   
    执行pass语句
    char:  W
    char:  o
    char:  r
    char:  l
    char:  d
    复制代码

     简单示例

    复制代码
    #!/usr/bin/env python
    # -*- coding:utf-8 -*-
    '''
    用户登录、注销、注册
    '''
    import json
    
    user_dict = {}
    cmd_list = ['ls','move','cd','mkdir','rm','touch']
    
    def login():
        while True:
            user_name = input("please enter login user name >>: ")
            with open('data.json','r') as f:
                data  = f.read()
            user_dict = json.loads(data)
            if user_name in user_dict:
                while True:
                    user_pawd = input("please enter login user pawd >>: ")
                    if user_pawd == user_dict[user_name]:
                        while True:
                            cmd = input("please enter command >>>: ")
                            if cmd in cmd_list:
                                print("Run command %s" %cmd)
                            elif cmd == "quit":
                                break
                            else:
                                print("please cmd error,please enter again!")
                        break
                    else:
                        print("Enter login user pawd error,please enter again!")
                break
            else:
                print("Enter login user name error,please enter again!")
    
    def registered():
        while True:
            with open('data.json','r') as f:
                data = f.read()
            user_dict = json.loads(data)
            user_name = input("please enter user name >>>: ")
            if user_name not in user_dict:
                user_pawd = input("please enter user pawd >>>: ")
                user_dict[user_name] = user_pawd
                data = json.dumps(user_dict)
                with open('data.json','w') as f:
                    f.write(data)
                break
            else:
                print("Enter user name existed !")
    def logout(): while True: user_name = input("please enter delete user name >>: ") with open('data.json','r') as f: data = f.read() user_dict = json.loads(data) if user_name in user_dict: del user_dict[user_name] data = json.dumps(user_dict) with open('data.json','w') as f: f.write(data) break else: print("user name not existed!")
    if __name__ == '__main__': while True: choice = input(" login \n regist \n quit \n logout \n >>:") if choice == "login": login() elif choice == "regist": registered() elif choice == "logout": logout() elif choice == "quit": break else: print("choice error!")

    复制代码
    转自:https://www.cnblogs.com/dragon-123/p/10228407.html
  • 相关阅读:
    Python 操作 MySQL 之 pysql 与 SQLAchemy
    Python 列表元素里面含有字典或者列表进行排序
    Windows PyCharm QtDesigner/pyuic5配置
    Python之科学运算Pandas模块
    Linux 主要目录速查表
    php读取文件大小
    上传视频云点播和查看视频
    wordppt转pdf
    微信登录
    微信公众号
  • 原文地址:https://www.cnblogs.com/javalinux/p/14812208.html
Copyright © 2011-2022 走看看