python基础——3(流程控制)
一、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(流程控制)的更多相关文章
- python基础之流程控制、数字和字符串处理
流程控制 条件判断 if单分支:当一个“条件”成立时执行相应的操作. 语法结构: if 条件: command 流程图: 示例:如果3大于2,那么输出字符串"very good" ...
- python基础之流程控制(2)
今天将是基础篇的最后一篇,咱们来补上最后一个内容,流程控制for循环 For 循环 一.为什么有for循环? for循环能做的事情,while循环全都可以实现,但是在某些情境下,for循环相对于whi ...
- python基础之流程控制
流程控制之----if 流程控制,是指程序在运行时,个别的指令(或者是陈述.子程序)运行或者求值的顺序.人生道路上的岔口有很多,在每个路口都是一个选择,在每个路口加上一个标签,选择哪个就是满足哪个条件 ...
- python基础:流程控制案例:
1,简述编译型与解释型的语言,且分别列出你知道的哪些语言属于编译型,哪些属于解释型. 答:简单理解编译型语言类似谷歌翻译,整篇读入整篇翻译,代表语言有C语言,解释型语言类似同 声传译,读入一行翻译 ...
- python基础之流程控制(1)
一.分支结构:if 判断 1.什么要有if 判断语句? 让计算机可以像人一样根据条件进行判断,并根据判断结果执行相应的流程. 2.基本结构 单分支结构 # 单分支 if 条件1: 代码1 代码2 代码 ...
- python基础之流程控制(if判断和while、for循环)
程序执行有三种方式:顺序执行.选择执行.循环执行 一.if条件判断 1.语句 (1)简单的 if 语句 (2)if-else 语句 (3)if-elif-else 结构 (4)使用多个 elif 代码 ...
- Python基础之流程控制for循环
目录 1. 语法 2. for+break 3. for+continue 4. for循环嵌套 1. 语法 while循环可以对任何内容循环,但循环次数不可控 for循环基于容器类型的长度,循环次数 ...
- Python 基础知识----流程控制
判断语句 循环语句 嵌套
- 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 ...
- Python基础之流程控制while循环
目录 1. 语法 2. while+break 3. while+continue 4. while+else 1. 语法 最简单的while循环如下: ''' while <条件>: & ...
随机推荐
- Eclipse的ant调用maven
需要在 eclipse 的 windows - preferences - ant - runtime - classpath - global entries 加入 eclipse 里面的 jsch ...
- 152 Maximum Product Subarray 乘积最大子序列
找出一个序列中乘积最大的连续子序列(该序列至少包含一个数).例如, 给定序列 [2,3,-2,4],其中乘积最大的子序列为 [2,3] 其乘积为 6.详见:https://leetcode.com/p ...
- 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 ...
- Oozie的作用
Oozie的作用: 1.统一调度hadoop系统中常见的mr任务启动. hdfs操作. shell调度. hive操作等 2.使得复杂的依赖关系.时间触发.事件触发使用xml语言进行表达,开发效率提高 ...
- Vue nextTick 理解
官网解释: 将回调延迟到下次 DOM 更新循环之后执行.在修改数据之后立即使用它,然后等待 DOM 更新.它跟全局方法 Vue.nextTick 一样,不同的是回调的 this 自动绑定到调用它的实例 ...
- idea使用Git提交代码时忽略指定文件或文件夹
简述 使用idea编写代码并使用git作为版本控制器的时候,常常不需要提交配置文件以及一些其他不需要提交的文件,可以使用.ignore插件来在上传的时候忽略一些文件或文件夹. 安装 注意:安装完成之后 ...
- 学习ASP.NET MVC5的一个轻量级的NinJect框架学习的第二天
新建一个Abstract文件夹 放置一些抽象的类,如接口 我们通过该接口就可以得到对应类的相关信息, 不需要去管该数据如何存储,以及存储的位置,这就是存储库模式的本质 public i ...
- AJPFX总结集合的概念
//java 中集合的概述========================================================== 集合的概念: 为 ...
- AngularJS 表单验证手机号(非必填)
代码: <form ng-app="myApp" ng-controller="validateCtrl" name="myForm" ...
- UVA 11922 Permutation Transformer (Splay树)
题意: 给一个序列,是从1~n共n个的自然数,接下来又m个区间,对于每个区间[a,b],从第a个到第b个从序列中分离出来,翻转后接到尾部.输出最后的序列. 思路: 这次添加了Split和Merge两个 ...