一、if判断

1、语法一:

if 条件:
    子代码块

示例代码:
sex = 'female'
age = 18
is_beautiful = True
if sex == 'female' and age >16 and age < 20 and is_beautiful:
    print("开始表白。。")

2、语法二:

if 条件:
    #条件成立时执行的子代码块
    子代码块
else:
    #条件不成立时执行的子代码块
    子代码块

示例代码:
sex = 'female'
age = 28
is_beautiful = True
if sex == 'female' and age > 16 and age < 20 and is_beautiful:
    print("开始表白。。")
else:
    print("阿姨好。。")

3、语法三:

if 条件1:
    子代码块
    if 条件2:
        子代码块

示例代码:
sex = 'female'
age = 18
is_beautiful = True
is_successful = True
if sex == 'female' and age > 16 and age < 20 and is_beautiful:
    print("开始表白。。")
    if is_successful:
        print("在一起")
    else:
        print("爱是折磨人的东西。。")
else:
    print("阿姨好。。")

4、完整的if语句

if 条件1:
    子代码块1
elif 条件2:
    子代码块2
elif 条件3:
    子代码块3
else:
    子代码块4

示例代码:
score = int(input("please input your score:"))
if score >= 90:
    print("优秀")
elif score >= 80:
    print("良好")
elif score >= 70:
    print("普通")
else:
    print("很差")

二、while循环

1、语法:

while 条件:
    循环体

2、结束循环方法一:

条件改为False,不会立即结束循环,而是在下一次循环判断条件时才生效。

示例:
tag = True
while tag:
    name = input("please input your name:")
    pwd = input("please input your password:")
    if name == 'shj' and pwd == '123':
        print("login successful")
        tag = False # 后面的代码依然会执行
    else:
        print("Invalid username and password.")
    print("end".center(20,'*'))

3、结束循环方法二:

break,一定要放在循环体内,一旦循环执行到break就会立即结束本层循环。

示例:
while True:
    name = input("please input your name:")
    pwd = input("please input your password:")
    if name == 'shj' and pwd == '123':
        print("login successful")
        break  # 后面的代码不会执行
    else:
        print("Invalid username or password.")
        continue   # 此处加continue无用
    print("end".center(20,'*'))

4、结束循环方法三:

continue,结束本次循环,直接进入下一次循环

示例:打印1,2,3,5
count = 1
while count < 6
    if count == 4:
        count += 1
        continue
    print(count)
    count += 1

5、while+else

在循环结束后,并且只有循环没有被break打断过的情况下,才会执行else的代码。

while True:
    print(1)
    break
else:   # else的代码不会执行
    print("else的代码")

tag=True
while tag:
    print(1)
    print(2)
    print(3)
    tag=False
else:  # else的代码会被执行
    print('else的代码')

6、while的嵌套循环

语法:
while 条件1:
    while 条件2:
        代码1
        代码2
        代码3

示例一:

while True:
    name=input('please input your name: ')
    pwd=input('please input your password: ')
    if name == 'shj' and pwd == '123':
        print("login successful..")
        while True:
            print("""
            0 退出
            1 取款
            2 转账
            3 查询
            """)
            choice = input("请输入您要执行的操作:")
            if choice == '1':
                print("取款")
            elif choice == '2':
                print("转账")
            elif choice == '3':
                print("查询")
            elif choice == '0':
                break
            else:
                print("您的输入有误,请重新输入。")
        break
    else:
        print('username or password error.')

示例二:
tag = True
while tag:
    name=input('please input your name: ')
    pwd=input('please input your password: ')
    if name == 'shj' and pwd == '123':
        print("login successful")
        while tag:
            print("""
            0 退出
            1 取款
            2 转账
            3 查询
            """)
            choice = input("请输入您要执行的操作:")
            if choice == '0':
                tag = False
            elif choice == '1':
                print("取款")
            elif choice == '2':
                print("转账")
            elif choice == '3':
                print("查询")
            else:
                print("您的输入有误,请重新输入")
    else:
        print("username or password error.")

三、for循环

for循环的强大之处在于循环取值

循环遍历列表
l = ['a','b','c','d','e']

#用while循环完成,比较复杂
i = 0
while i < len(l):
    print(l[i])
    i += 1

# for循环简单
for x in l:
    print(x)

# 以字典为例,while实现困难,for循环简单
dic={'name':'egon','age':18,'gender':'male'}
for a in dic:
    print(a,dic[a])

# for+break
nums=[11,22,33,44,55]
for x in nums:
    if x == 44:
        break
    print(x)

# for + continue
nums=[11,22,33,44,55]
for x in nums:
    if x == 22 or x == 44:
        continue
    print(x)

# for + else
names=['egon','kevin1111_dsb','alex_dsb','mac_dsb']

for name in names:
    if name == 'kevin_dsb':
        break
    print(name)
else:
    print('======>')

# for+ range()
# range的用法
>>> range(1,5)
[1, 2, 3, 4]
>>> for i in range(1,5):
...     print(i)
...
1
2
3
4
>>> range(1,5,1)
[1, 2, 3, 4]
>>> range(1,5,2) # 1 3
[1, 3]

#for嵌套
for i in range(3):
    for j in range(4):
        print(i,j)

# 对上述代码的翻译及其运行过程
for i in [0,1,2]: # i=1
    for j in [0,1,2,3]: # j=1
        print(i,j)

执行结果如下(外层循环每执行一次,内层循环就遍历一遍):
'''
0 0
0 1
0 2
0 3

1 0
1 1
1 2
1 3

2 0
2 1
2 2
2 3

'''

python基础——3(流程控制)的更多相关文章

  1. python基础之流程控制、数字和字符串处理

    流程控制 条件判断 if单分支:当一个“条件”成立时执行相应的操作. 语法结构: if 条件: command 流程图: 示例:如果3大于2,那么输出字符串"very good" ...

  2. python基础之流程控制(2)

    今天将是基础篇的最后一篇,咱们来补上最后一个内容,流程控制for循环 For 循环 一.为什么有for循环? for循环能做的事情,while循环全都可以实现,但是在某些情境下,for循环相对于whi ...

  3. python基础之流程控制

    流程控制之----if 流程控制,是指程序在运行时,个别的指令(或者是陈述.子程序)运行或者求值的顺序.人生道路上的岔口有很多,在每个路口都是一个选择,在每个路口加上一个标签,选择哪个就是满足哪个条件 ...

  4. python基础:流程控制案例:

    1,简述编译型与解释型的语言,且分别列出你知道的哪些语言属于编译型,哪些属于解释型. 答:简单理解编译型语言类似谷歌翻译,整篇读入整篇翻译,代表语言有C语言,解释型语言类似同   声传译,读入一行翻译 ...

  5. python基础之流程控制(1)

    一.分支结构:if 判断 1.什么要有if 判断语句? 让计算机可以像人一样根据条件进行判断,并根据判断结果执行相应的流程. 2.基本结构 单分支结构 # 单分支 if 条件1: 代码1 代码2 代码 ...

  6. python基础之流程控制(if判断和while、for循环)

    程序执行有三种方式:顺序执行.选择执行.循环执行 一.if条件判断 1.语句 (1)简单的 if 语句 (2)if-else 语句 (3)if-elif-else 结构 (4)使用多个 elif 代码 ...

  7. Python基础之流程控制for循环

    目录 1. 语法 2. for+break 3. for+continue 4. for循环嵌套 1. 语法 while循环可以对任何内容循环,但循环次数不可控 for循环基于容器类型的长度,循环次数 ...

  8. Python 基础知识----流程控制

    判断语句 循环语句 嵌套

  9. Python基础之流程控制if判断

    目录 1. 语法 1.1 if语句 1.2 if...else 1.3 if...elif...else 2. if的嵌套 3. if...else语句的练习 1. 语法 1.1 if语句 最简单的i ...

  10. Python基础之流程控制while循环

    目录 1. 语法 2. while+break 3. while+continue 4. while+else 1. 语法 最简单的while循环如下: ''' while <条件>: & ...

随机推荐

  1. Eclipse的ant调用maven

    需要在 eclipse 的 windows - preferences - ant - runtime - classpath - global entries 加入 eclipse 里面的 jsch ...

  2. 152 Maximum Product Subarray 乘积最大子序列

    找出一个序列中乘积最大的连续子序列(该序列至少包含一个数).例如, 给定序列 [2,3,-2,4],其中乘积最大的子序列为 [2,3] 其乘积为 6.详见:https://leetcode.com/p ...

  3. RHEL 6.5----iscsi多路径存储

    主机名 IP master eth0: 192.168.30.130(NAT) eth1: 192.168.17.130(VMNet4) node-1 eth0: 192.168.30.131(NAT ...

  4. Oozie的作用

    Oozie的作用: 1.统一调度hadoop系统中常见的mr任务启动. hdfs操作. shell调度. hive操作等 2.使得复杂的依赖关系.时间触发.事件触发使用xml语言进行表达,开发效率提高 ...

  5. Vue nextTick 理解

    官网解释: 将回调延迟到下次 DOM 更新循环之后执行.在修改数据之后立即使用它,然后等待 DOM 更新.它跟全局方法 Vue.nextTick 一样,不同的是回调的 this 自动绑定到调用它的实例 ...

  6. idea使用Git提交代码时忽略指定文件或文件夹

    简述 使用idea编写代码并使用git作为版本控制器的时候,常常不需要提交配置文件以及一些其他不需要提交的文件,可以使用.ignore插件来在上传的时候忽略一些文件或文件夹. 安装 注意:安装完成之后 ...

  7. 学习ASP.NET MVC5的一个轻量级的NinJect框架学习的第二天

      新建一个Abstract文件夹   放置一些抽象的类,如接口   我们通过该接口就可以得到对应类的相关信息, 不需要去管该数据如何存储,以及存储的位置,这就是存储库模式的本质  public  i ...

  8. AJPFX总结集合的概念

    //java 中集合的概述==========================================================        集合的概念:              为 ...

  9. AngularJS 表单验证手机号(非必填)

    代码: <form ng-app="myApp" ng-controller="validateCtrl" name="myForm" ...

  10. UVA 11922 Permutation Transformer (Splay树)

    题意: 给一个序列,是从1~n共n个的自然数,接下来又m个区间,对于每个区间[a,b],从第a个到第b个从序列中分离出来,翻转后接到尾部.输出最后的序列. 思路: 这次添加了Split和Merge两个 ...