本文介绍下python条件和循环语句的语法

一、if条件语句

语法格式如下:

if 表达式:

  ....

elif 表达式:

  ....

elif 表达式:

  ....

else:

  .....

说明:与其它语言的语法区别是,表达式或else后面要加 冒号 结尾。

语句块没有用一些标识符括起来,而是靠缩进来标记。

二、while循环

语法格式是:

while 表达式:

  ........

三、for循环

for循环用于遍历一个集合,语法格式是:

for  元素  in  集合

  ........

举例如下:

>>> value=""
>>> for i in range(1,10):
... value = value+str(i)+","
...
>>> print value
1,2,3,4,5,6,7,8,9,

说明,上面代码的range是python内置函数,创建一个范围内数字集合(不包括下限),用这个函数可以代替其它语言中的 for(i=1;i<10;i++)这种使用方式。

str也是python的一个内置函数,这里是将整数转为字符串。因为在python中,无法直接将数字和字符串相加,需要转换下。

四、break 和 continue语句

同其它语言一样,python也有break 和 continue语句,用在循环中,含义同其它语言。

五、pass、del 、exec和eval语句

在python中,还有几个特殊的语句,如下:

1、pass语句

表示一个空语句,啥事都没干。这个还是有用的,比如用在条件语句体中。

2、del语句

用于删除某个变量,如

>>> x=1
>>> print x
1
>>> del x
>>> print x
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'x' is not defined

变量x一旦被删除后,则再引用会报错。

3、exec 和 eval语句

exec语句用于动态执行python语句,即将python语句当字符串传入后执行。如:

exec ("print 23")

调用后会执行 print 23 语句

eval语句会计算一个表达式,并返回表达式的值,如:

print eval("3+5")

输出为 8

说明,在使用exec和eval时要小心,特别是在里面给变量赋值时,防止覆盖外部的变量,如:

>>> x=12
>>> exec("x='good'")
>>> print x
good

可以看出exec中的变量 x 覆盖了外部定义的变量。如果想要exec中的执行对外部没影响,可以指定一个命名空间。如:

>>> scope={}
>>> x=2
>>> exec 'x="helo"' in scope
>>> print scope["x"]
helo
>>> print x
2

可以看出,通过 in scope,使得exec的执行范围在对象scope的范围内。注意,scope对象还可以设置初始值,可以被exec中语句使用。
如果exec 或 eval语句要执行多条python语句,就用 ''''括起来的长字符串即可。

Python 2.7 学习笔记 条件与循环语句的更多相关文章

  1. Go语言学习笔记六: 循环语句

    Go语言学习笔记六: 循环语句 今天学了一个格式化代码的命令:gofmt -w chapter6.go for循环 for循环有3种形式: for init; condition; increment ...

  2. Fortran学习笔记4(循环语句)

    Fortran学习笔记4 Fortran学习笔记4 逻辑运算 循环 Do语句 Do-While循环 循环控制 循环应用实例 逻辑运算 if命令需要和逻辑运算表达式搭配才能起到很好的效果.下面分别列出F ...

  3. python系列八:Python3条件控制&循环语句

    #!/usr/bin/python #-*-coding:gbk-*-#Python3 条件控制&循环语句import randomage = int(input("请输入你的年龄: ...

  4. .Net程序员之Python基础教程学习----判断条件与循环[Fourth Day]

        今天学习Python的判断条件与循环操作. 一. 布尔变量: 在学习判断条件之前必须的了解bool变量,在Python中bool变量与C语言比较类似,与.net差别比较大,其中下面集中情况需要 ...

  5. python3学习笔记十(循环语句)

    参考http://www.runoob.com/python3/python3-loop.html 循环语句 while循环 # !/usr/bin/env python3 n = 100 sum = ...

  6. shell 学习笔记9-while/until循环语句

    一.while循环语句 1.循环语句 循环愈久就是重复执行一条指令或一组执行,知道条件不在满足时停止,shell循环语句包括,while.until.for.select语句 2.while循环 主要 ...

  7. python基础入门之二 —— 条件、循环语句

    1.条件语句 if if…else… 多重if if嵌套 三目运算符 (化简的if else) if 条件:   条件成立执行代码1   条件成立执行代码2 if False: print('if判断 ...

  8. Python学习笔记——条件和循环

    1.条件表达式 >>> x = 3 >>> x = 1 if x<3 else 2 >>> x 2 2.for语句用于序列类型 <1& ...

  9. Python Built-in Function 学习笔记

    Python Built-in Function 学习笔记 1. 匿名函数 1.1 什么是匿名函数 python允许使用lambda来创建一个匿名函数,匿名是因为他不需要以标准的方式来声明,比如def ...

随机推荐

  1. setTimeout 虚假的“异步”

    看这篇http://www.laruence.com/2009/09/23/1089.html 所以实际上 setTimeout更像是任务按照队列执行  经过setTimeout设置后任务放在了队尾 ...

  2. Pascal向C++的跨越

    最近从pas转向了C++,觉得需要在语言上总结对比一下,以及记录一些注意点,关于STL,还需要之后好好地学习.同时,希望这篇文章对从pas转C++的同学有所帮助. 基本类型 首先是基本类型的比较: P ...

  3. 算法导论 6-2 d叉堆

    问题: d叉堆性质与二叉堆相似,但其每个非叶子结点有d个孩子: 1) 如何在一个数组中表示一个d叉堆? 2) 包含n个元素的d叉堆的高度是多少? 3) 给出 EXTRACT-MAX在d叉堆的有效实现, ...

  4. mysql三个应用场景

    场景一,数据表自动备份(多个数据表字段同步等),使用触发器.如updatelog记录对资源的所有操作日志,reslastlog记录资源最后操作的日志信息.同步方式实现如下: //创建表 DROP TA ...

  5. DBCC CHECKDB用法 手工修复数据库

          快速修复 DBCC CHECKDB ('数据库名', REPAIR_FAST)      重建索引并修复 DBCC CHECKDB ('数据库名', REPAIR_REBUILD) 如果必 ...

  6. 十一、观察者模式(Observable、Observer)

    老板出差了,员工1.员工2..均放羊中.他们请求前台的秘书,当老板回来时通知自己,免得被Boss抓个现行.秘书想了想,说————嗯,这是观察者模式. 当一个对象的改变需要同时改变其它对象,而且它不知道 ...

  7. Port 8081 already in use, packager is either not running or not running correctly

    运行 react_native 时发生这个错误,解决办法 关掉端口8081对应的进程 1.打开终端,输入命令:lsof -i:8081 2.此时提示: COMMAND   PID    USER   ...

  8. java数据结构与算法值优先级队列

    一.优先级队列 什么是优先级队列:优先级队列是一种比栈和队列更加常用的一种数据结构.在优先级队列中,数据项按照关键字的值有序.数据项插入到队列中时,会按照顺序插入到合适的位置,用来保证队列的顺序. 生 ...

  9. 找出N^N的最左边的一位数和最后边的一位数

    问题:找出N^N的最左边的一位数和最右边的一个数,N(1<=N<=1,000,000,000). 找最右边一位: 分析:其实找左右边的一位数还挺简单的,快速幂每次都只取结果的最后一位参加下 ...

  10. BZOJ 2015: [Usaco2010 Feb]Chocolate Giving( 最短路 )

    裸最短路.. ------------------------------------------------------------------------------------ #include ...