一、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. SaberSama【css总结】

    为什么要转过来呢? 因为我觉到,同样是一个初学者,应该互相学习,交流. css:Cascading Style Sheets 层叠样式表 CSS引入方式: 1.内嵌: <p style=&quo ...

  2. 使用坚果云+keepass实现网盘密码管理

    准备工作 登录坚果云web版 在主页创建了一个新的同步文件夹AAA(与同步文件夹My Nutstore并列) 设置同步文件夹AAA:勾选“默认不同步到电脑” 把KeePass的数据库文件db.kdbx ...

  3. 使用selenium grid与BrowserMobProxyServer联合使用

    背景:项目主要是做埋点数据,要使用 BrowserMobProxyServer,它相当于做一个代理,在你访问一个网页时,通过代理,获取打开网页的数据,对比你需要对比数据,所以这个工具提供获取页面请求的 ...

  4. CORS跨域限制以及预请求验证

    之前我们可以通过“Access-Control-Allow-Origin”,实现跨域请求,那是不是所有跨域请求都可以通过设置Access-Control-Allow-Origin实现跨域请求呢?显然不 ...

  5. DOM节点(二):操作节点

    appendChild() 用于向childNodes列表的末尾添加一个节点. var returnedNode = someNode.appendChild(newNode); 如果传入的节点已经是 ...

  6. Centos 5.5 编译安装mysql 5.5.9

    下载mysql wget  http://mysql.mirrors.pair.com/Downloads/MySQL-5.5/mysql-5.5.9.tar.gz 创建mysql用户 [root@x ...

  7. vector的几种初始化和遍历

    随着C++11标准的出现,vector出现了新的初始化和遍历用法,但是vs2010和较高版本并没有能完全支持C++11标准,所以我就将它的所有的用法归纳了一下. vector的初始化 vector基本 ...

  8. C++ Boost库简介

    boost是一个准标准库,相当于STL的延续和扩充,它的设计理念和STL比较接近,都是利用泛型让复用达到最大化.不过对比STL,boost更加实用.STL集中在算法部分,而boost包含了不少工具类, ...

  9. 使用筛法在 O(logN) 的时间内查询多组数的素数因子

    Prime Factorization using Sieve O(log n) for multiple queries 使用筛法在 O(logN) 的时间内查询多组数的素数因子 前言 通常, 我们 ...

  10. cuda数组的拷贝

    原文链接 简单描述一下自己要做的事情:(1)CPU三维的vector--->(2)CPU三维数组--->(3)转换到GPU中的三维数组--->(4)转换到CPU中的三维数组,而其中问 ...