一、python的特殊缩进与语法

  对于Python而言代码缩进是一种语法,Python没有像其他语言一样采用{}或者begin...end分隔代码块,而是采用代码缩进和冒号来区分代码之间的层次。缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。例如:

if True:
print("Hello girl!") #缩进一个tab的占位
else: #与if对齐
print("Hello boy!") #缩进一个tab的占位

  Python对代码的缩进要求非常严格,如果不采用合理的代码缩进,将抛出SyntaxError异常。下面这段代码会抛出异常

if True:
print("Hello girl!")
else:
print("Hello boy!")
print("end")

 运行该段代码将会抛出异常。

 

  错误表明,你使用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改为一致即可。
  有时候代码采用合理的缩进但是缩进的情况不同,代码的执行结果也不同。有相同的缩进的代码表示这些代码属于同一代码块。例如:

if True:
print("Hello girl!")
else:
print("Hello boy!")
print("end")
print("=========华丽的分割线===========")
if True:
print("Hello girl!")
else:
print("Hello boy!")
print("end")

  运行结果:

  分割线以上的print("end")未缩进与if对齐,因此它与if属于同一代码块,执行完if的操作,执行输出。分割线一下的print("end")与print("Hello boy!")保持一致的缩进,则它与print("Hello boy!")属于else之内的代码块。缩进相同的一组语句构成一个代码块,我们称之代码组。

二、if条件判断语句

  格式为:

  if 判断条件:

    执行语句.....

  else:

    执行语句.....

  其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句.

  流程图如下:

  具体例子如下:

a = 3
if a <= -1:
print('a是负数')
elif a == 0:
print ('a等于0')
else :
print('a是正数')

  程序运行结果如下:

 

三、while语句

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

while 判断条件:
执行语句……

  执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。当判断条件假false时,循环结束。如果条件判断语句永远为 true,循环将会无限的执行下去。执行流程图如下:

  

  程序例子如下:

x = 5
while x>0:
print ('')
print ('')
print ('')
x -= 1

  运行结果如下:

四、for循环

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

for iterating_var in sequence:
statements(s)

  流程图:

  相关函数:

  1.enumerate():用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,语法为:

enumerate(sequence, [start=0])

  参数:sequence -- 一个序列、迭代器或其他支持迭代对象。start -- 下标起始位置。

  程序实例如下:

seq = ['one', 'two', 'three']
for i, element in enumerate(seq):
print i, seq[i]

  运行结果如下:

  2.range():可创建一个整数列表。语法为:

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)

  程序示例如下:

x = ''
for i in range(len(x)) :
print(x[i])

  运行结果如下:

  3.xrange():用法与 range 完全相同,所不同的是生成的不是一个数组,而是一个生成器,相比range()执行效率较高。语法:

xrange(stop)
xrange(start, stop[, step])

  参数说明:

    start: 计数从 start 开始。默认是从 0 开始。例如xrange(5)等价于xrange(0, 5);
    stop: 计数到 stop结束,但不包括 stop。例如:xrange(0, 5) 是[0, 1, 2, 3, 4]没有5
    step:步长,默认为1。例如:xrange(0, 5) 等价于 xrange(0, 5, 1)

  

五、break与continue

  1.break

  Python break语句,就像在C语言中,打破了最小封闭for或while循环。break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。break语句用在while和for循环中。如果使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。

  程序代码如下:

for i in xrange(1,11):
if i == 3:
print ('hello world')
break
print ('i = %d'%i)

  运行结果如下:

  2.continue

  Python continue 语句跳出本次循环。continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。continue语句用在while和for循环中。

  程序代码如下:

for i in xrange(1,11):
if i == 3:
print ('hello world')
continue
print ('i = %d'%i)

  运行结果如下:

python的判断与循环的更多相关文章

  1. python条件判断与循环

    条件判断 1.python缩进规则: 如果if语句判断是True,就把缩进的语句执行了,否则,什么也不做,比如: age=20 if age >= 18: print('your age is' ...

  2. Python条件判断和循环,range()函数

    条件判断经常使用if语句进行判断,表达方式为:if 条件语句:      :elif:else if...用于执行第一条不满足if的判断,继续执行其它的判断.比如一个简单的if判断 Python3取消 ...

  3. python之判断和循环

    计算机之所以能做很多自动化的任务,因为它可以自己做条件判断.比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,可以用if语句实现: age = : print ('your age i ...

  4. 牛逼!Python的判断、循环和各种表达式(长文系列第2篇

    流程控制是python语法很重要的一个分支,主要包括我们经常用到的判断语句.循环语句以及各种表达式,这也是上一篇文章没有介绍表达式的原因,在这篇文章中会更加系统全面的讲解这三方面的基础知识. 很多人学 ...

  5. Python条件判断和循环语句

    一.条件判断语句 通过一条或多条语句的判断来决定是否执行代码块 1.if语句基本形式: if 判断条件:    语句块 例如: score=75if score>=60:    print &q ...

  6. python 条件判断和循环

    一.条件判断    if if  age>= 18: 记住在判断语句后面要加上     : 还有要注意他的缩进 age = 20if age >= 18: print 'your age ...

  7. python条件判断和循环

    条件判断 if <条件判断1>: <执行1> elif <条件判断2>: <执行2> elif <条件判断3>: <执行3> e ...

  8. Python基础——判断和循环

    判断 缩进代替大括号. 冒号(:)后换号缩进. if test=100 if test>50: print('OK') print('test') if-elif-else test=50 if ...

  9. Python 条件判断 和循环

    使用条件判断 if else # 条件派单 if else print('条件派单 if else') # s = input('请输入生日年号:') # birth = int(s) birth = ...

随机推荐

  1. sharepoint 2010 FieldLookup 的更新方法

    网上有,但是是错误的,稍微改一下,就可以了 第一个方法是要更新的item,其中 _fieldname 为要更新的lookup字段名字,_lookupValue为要更新的值. public void S ...

  2. lrzsz的使用

    可以方便的在本地PC机和远程服务器之间传输文件. 1.下载 直接在centos上执行命令yum -y install lrzsz 2.上传文件 rz // 上传文件,执行命令rz,会跳出文件选择窗口, ...

  3. sublim的正则匹配(待续)

    ctrl+H 打开匹配模式 打开正则匹配模式 正则匹配的一些方法:  点代表的是任意字符.* 代表的是取 0 至 无限长度问号代表的是非贪婪模式.三个链接在一起是取尽量少的任意字符,一般不会这么单独写 ...

  4. 高精度进位制转换,Poj(1220)

    转自ACdream. #include <stdio.h> #include <string.h> #include <stdlib.h> #define MAXS ...

  5. 裁剪插件jCrop

    为大家介绍个插件:jCrop.这个插件被我用在了多个项目中,如通过画热力图来查看某块地方用户的浏览数,放大缩小拖动选框来实时预览所选区域的图片病裁剪,设置头像是选框必须要是正方形,它有着丰富的配置参数 ...

  6. 2017.11.17 C++系列---用malloc动态给c++二维数组的申请与释放操作

    方法一:利用二级指针申请一个二维数组. #include<stdio.h> #include<stdlib.h> int main() { int **a; //用二级指针动态 ...

  7. 2017.9.29 web网上答题及其自动评测系统

    1. 设计计一个网上答题及其自动评测系统,首先是试题页面的设计及其解答的提交, 其次是当提交解答之后,系统自动评阅并给出结果. 分析:需要两个jsp页面:一个是提交信息的页面,另一个是获取提交信息的页 ...

  8. Vue路由讲解

    1>router-link和router-view组件 2>路由配置 a.动态路由 import Home from "@/views/Home.vue"; expor ...

  9. Django Reverse for 'artic_post' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

    Reverse for 'home' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: [] ...

  10. Spring 学习之依赖注入

    什么是依赖关系? 纵观所有的Java 应用,从基于Applet的小应用到多层次结构的企业级别的应用,他们都是一种典型的依赖性应用,也就是由一些互相协作的对象构成的,Spring把这种互相协作的关系称之 ...