转自 http://www.cnblogs.com/BeginMan/p/3164600.html

一、Python语句

if语句、else语句、elif语句、条件表达式、while语句、for语句、break语句、continue语句、pass语句、Iterators(迭代器)、列表解析

二、常用语句小结

1、if语句可以通过布尔操作符and、or和not实现多重判断条件或否定判断条件

2、if...elif...elif...else..

3、三元操作符:Python2.5后:X if C else Y

x,y=4,3
if x>y:
s = y
else:
s= x print s

或许更加简洁的是:

x,y = 4,3
s = (x<y and [x] or [y])[0]

在Python2.5更新后:

x,y = 4,3
s = x if x<y else y

4、while:

count = 0
while(count<9):
.....
或者:
while True:
.....
#用的挺多的。

5、for循环

s = ['a','b','c','d','e']

#No1:项
for obj in s:
print obj, #a b c d e print range(len(s)) #[0, 1, 2, 3, 4]
#No2:索引
for obj in range(len(s)):
print s[obj], #a b c d e

配合len()、range()使用,使用range()能得到迭代对象的索引数的列表。

#No3:使用项和索引迭代
for i,eachline in enumerate(s):
print i,eachline
#0 a
#1 b
#2 c
#3 d
#4 e

enumrate():返回两个对象,一个是下标索引(%d),另一个是下标索引对应的元素(%s)

6、break、continue

break:结束当前循环,跳到下一条语句。
continue:终止当前循环,忽略剩余的部分,然后回到循环的顶端,在开始执行下一次迭代前,验证是否通过,然后再进行下一次的迭代。

pwd='abc'
count = 0
while count<3:
inp =raw_input('Please input password:')
if inp == pwd:
print 'ok'
break
else:
count += 1
# if count<3:
# print 'you have %d times to input password' %(3-count)
# else:
# print 'game over'
#精简:x if ..else y
s = 'you have %d times to input password' %(3-count) if count<3 else 'game over'
print s

7、pass

pass:是一个很好的占位符,不做任何事情。

注意:编写代码时,最好先别结构定下来,如果不想让一些代码干扰,那么最好的方法就是使用pass

8、for、while与else的联合使用

其他语言中,else只能用于if条件句,但是Python不同其他语言,else还能与for、while一起使用。在循环后处理,并且如果遇到break,则也会跳过else的。

def showMaxFactor(num):
count = num / 2
while count > 1:
if num % count == 0:
print u'%d的最大公约数是: %d' %(num,count)
break
count -= 1
else:
print num,u'是素数' for eachNum in range(10,21):
showMaxFactor(eachNum)

《转》python学习(11)-表达式和语句的更多相关文章

  1. python学习之with...as语句

    python中的with...as...语句类似于try...finally...语句: # -*- coding: utf-8 -*- # """ with...as. ...

  2. JavaScript学习笔记-表达式和语句

    表达式和语句 eval( ) 只有一个参数 参数非字符串时,直接返回这个参数: 参数为字符串时,它把字符串当成JavaScript代码进行编译,编译失败则抛出语法错误,编译成功则执行代码,并返回最后一 ...

  3. python学习_条件判断语句_if

    #条件判断语句(if)#语法:if条件表达式:语句# 代码块#执行流程:if语句在执行时,会先对条件表达式进行求值判断#如果为True,则执行if后面的语句#如果为False,则不执行#默认情况下,i ...

  4. 《转》python 11 表达式和语句

    转自 http://www.cnblogs.com/BeginMan/p/3164600.html 一.Python语句 if语句.else语句.elif语句.条件表达式.while语句.for语句. ...

  5. 【python系统学习11】循环语句里的F4

    循环语句里的F4 深入了解下四个新语句,分别是:continue.break.pass.else以及他们搭配for.while循环等语句时,所产生的化学反应. else 由于continue.brea ...

  6. Python 学习笔记8 循环语句 while

    While循环是哟中利用条件语句,不断的执行某一段代码块,达到批量操作输出等一系列的操作,直到条件不满足或者被强制退出为止. 其工作流程如下: (图片来源菜鸟教程:http://www.runoob. ...

  7. Python学习-lambda表达式

    lambda只是一个表达式,函数体比def简单很多.lambda的主体是一个表达式,而不是一个代码块.仅仅能在lambda表达式中封装有限的逻辑进去.lambda表达式是起到一个函数速写的作用.允许在 ...

  8. Python学习记录4(语句)

    赋值语句 序列解包 条件语句 语句块 布尔变量 条件执行和if语句 条件运算符 循环 while语句 for循环 迭代工具 跳出循环 break continue while truebreak语句 ...

  9. 【Python学习笔记】with语句与上下文管理器

    with语句 上下文管理器 contextlib模块 参考引用 with语句 with语句时在Python2.6中出现的新语句.在Python2.6以前,要正确的处理涉及到异常的资源管理时,需要使用t ...

  10. Python 学习笔记9 循环语句 For in

    For in 循环主要适用于遍历一个对象中的所有元素.我们可以使用它遍历列表,元组和字典等等. 其主要的流程如下:(图片来源于: https://www.yiibai.com/python/pytho ...

随机推荐

  1. Spring JDBC处理CLOB类型字段

    以下示例将演示使用spring jdbc更新CLOB类型的字段值,即更新student表中的可用记录. student表的结构如下 - CREATE TABLE student( ID INT NOT ...

  2. Sql:主表与子表的最新记录级联查询

    SELECT * FROM MainTable mLEFT JOIN (SELECT d.* FROM (SELECT MAX(clc.Id) AS id FROM ChildTable AS clc ...

  3. (转)Android 5.1.1 源码目录结构

    转自:http://blog.csdn.net/tfslovexizi/article/details/51888458最近公司培训新同事,我负责整理一点关于android的基础知识,遥想当年,刚接触 ...

  4. STUN,TURN,ICE

    STUN,TURN,ICE WebRTC

  5. DIV 自定义滚动条样式

    当内容超出容器时,容器会出现滚动条,其自带的滚动条有时无法满足我们审美要求,那么我们可以通过css伪类来实现对滚动条的自定义. 首先我们要了解滚动条.滚动条从外观来看是由两部分组成:1,可以滑动的部分 ...

  6. 【WP8】同步执行异步代码

    微软的StorageFile只支持异步的方式进行文件操作,我之前也封装过一个StorageHelper,但是当所有的方法都是异步的时候也带来一些问题 1.比如我们不能在构造函数调用异步代码(等待), ...

  7. 安装yeoman报没有权限的错误

    新的ubuntu服务器, 不小心先装了npm, 再装的node, 再用meanjs装的yeoman(即不是自己npm install -g yo装的, 是用meanjs的stack一步到位的),而正常 ...

  8. VCL 中的 Windows API 函数(4): AdjustWindowRectEx

    AdjustWindowRectEx 用在了 Forms.DBCtrls 单元. AdjustWindowRectEx 可以根据窗口样式获取的边缘尺寸. 测试: var   R: TRect; beg ...

  9. java中*和**的作用

    “*”就表示了所有的文件,但是“*”并不包括子目录下的文件: “**”匹配包含任意级子目录中所有的文件

  10. Cakephp中使用JavaScriptHelper来引入js文件

    页面的head部分的内容在Cakephp中主要是有htmlhelper来进行控制的,而js部分则是由JavaScripthelper来进行控制的,在controller里面设置好:var $helpe ...