流程语句

  1.if判断语句

  在python中if语句可以依据判断的条件,决定执行哪个语句。其格式如下:

if 条件:
代码1
else:
代码2

  当满足条件1时,执行代码1,否则执行代码2。所以条件语句输出的值的数据类型是布尔型。

  其中else不能单独作为一串代码使用,需要配合if或者while循环语句来使用。当然,上述代码只能使用两个语句之间的抉择,如果没有执行if语句,那就会执行else语句,想反,如果执行了if语句,就不会执行else语句。

  当程序需要多个语句之间进行抉择时,需要if-elif-else语句来实现。下面用一个判断分数的算法进行举例:

while 1:
achievement=input("请输入你的成绩:")
if int(achievement)>=90:
print('优秀')
elif int(achievement)>=80 and int(achievement)<90:
print('良好')
elif int(achievement)>=70 and int(achievement)<80:
print('普通')
else:
print('很差')

  python使用换行缩进的方法分割代码,在同一缩进行的代码会被同步执行,

  2.while循环

  while循环的格式是:

while 条件:
代码

  当条件成立时,代码就会一直执行,直到条件不满足为止。所以在编写时避免死循环的出现。

  当循环没有达到但不需要再执行下去时,可以设置判断条件,使用break中断函数中断所包含的循环。

  当达到某一条件时需要跳过本次循环时,可以使用continue函数。

  如果不使用break函数时,也可定义标记变量flag,当满足判断条件时,将flag置反,在随后的代码快进行判断,如

i=1
while i<11:
if i==4:
i += 1
continue
else:
print(i)
i += 1

  如上函数中,输出了1-10的整数,当i为4时不给予输出,使用了continue函数。

  在while也能使用while-else语句,其设定是当while循环正常结束时,则执行else中的语句,否则不执行。如下

i=1
while i<11:
print(i)
i+=1
else:
print('结束')

  运行结果最后会输出结束,而使用break中途截断输出时,不会执行输出结束的语句,如:

i = 1
while i < 11:
if i==4:
i+=1
break
print(i)
i += 1
else:
print('结束')

  3.for循环语句

  for循环与while循环中不同的是不依赖与索引取值,所以它的固定语法是

for i in 容器列表
代码1

  当开始循环时,i从容器中取值,赋予i中,所以在编程中进常使用range作为容器。

  当然,在python2和python3中range的定义有所不同,在python2中,range所指向的数据类型是list以列表的形式存在,而在3中就是range类型的,在2中这种类型有替代物wrange,其输出的类型也是wrange。

  (ps:对于各个容器,可以使用len()函数取其长度的值。)

  在使用range(1,4)中时要注意的时它是一个左闭右开的集合,即输出1-3的值。

  在字典中使用for循环对其打印时,打印的是其key值,如

info={'name':'lzx','age':'','sometime':'learn'}
for i in info:
print(i)

  运行结果为 name age sometime。可以看到i获取的值其实是字典里的key值。所以要想获得value还需使用info[i]打印。

  for也能与else联用,当for循环正常运行结束时,会执行最后的else语句,否则不执行。

day4_7.2的更多相关文章

随机推荐

  1. Java流程控制之选择语句

    选择语句 选择语句也称之为判断语句,主要有2种写法,一种是if语句,一种是switch语句.下面我们就详细的介绍一下这2种语句的用法. 判断语句if if语句第一种形式: if 格式: 执行流程 首先 ...

  2. maven help 插件

    maven help 插件 <build> <plugins> <plugin> <groupId>org.apache.maven.plugins&l ...

  3. 剑指Offer-36.数字在排序数组中出现的次数(C++/Java)

    题目: 统计一个数字在排序数组中出现的次数. 分析: 给定一个已经排好序的数组,统计一个数字在数组中出现的次数. 那么最先想到的可以遍历数组统计出现的次数,不过题目给了排序数组,那么一定是利用了排序这 ...

  4. matlab练习程序(螺线拟合)

    这里待拟合的螺线我们选择阿基米德螺线,对数螺线类似. 螺线的笛卡尔坐标系方程为:   螺线从笛卡尔坐标转为极坐标方程为:   阿基米德螺线在极坐标系下极径r和极角theta为线性关系,方程为:   计 ...

  5. 手把手教你如何用 OpenCV + Python 实现人脸检测

    配好了OpenCV的Python环境,OpenCV的Python环境搭建.于是迫不及待的想体验一下opencv的人脸识别,如下文. 必备知识 Haar-like Haar-like百科释义.通俗的来讲 ...

  6. spring-boot-starter-web排除自带的logback依赖

    <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring- ...

  7. laravel中控制器的创建和使用(五)

    laravel中我们可以使用 artisan 命令来帮助我们创建控制器文件. php artisan make:controller TestController TestController 控制器 ...

  8. WCF全双工通信实例分享(wsDualHttpBinding、netTcpBinding两种实现方式)

    最近在研究WCF通信,如果没有接触过的可以看我的前一篇文章:https://www.cnblogs.com/xiaomengshan/p/11159266.html 主要讲的最基础的basicHttp ...

  9. linux tmux用法

    1. 安装工具 Centos : yum install tmux 2. 基本操作 新建会话:tmux new -s session-name 查看会话:tmux ls 进入会话:tmux a -t  ...

  10. oracle 利用序列与触发器实现列自增

    实现步骤:先创建序列,后创建触发器 1.创建序列 create sequence 序列名 increment start maxvalue ; 2.创建触发器 create or replace tr ...