Python条件循环语句

print 'x','y' 相当于

print 'x'

print 'y'  

输出 x y

-------------------------------------------------------------------------------

从模块导入函数的时候,可以

1、 import somemodule                                                                                                     //导入模块,使用函数:module1.open(...)

2、from somemodule import somefunction                     //导入模块函数,使用函数:open(...),这样容易存在两个模块有同名的函数,解决方案:from module import function as anothername,使用重命名方法 anotherfunction(...)

3、from somemodule import somefunction,anotherfunction,yetanotherfunction    //从一个模块导入多个函数

4、from somemodule import *                         //导入模块中的所有函数

5、import somemodule as anothername                                                                         //重命名模块

--------------------------------------------------------------------------------

赋值:

多个赋值:  x,y,z=1,2,3

>>>values=1,2,3  (1,2,3为元祖赋值给变量)

>>>x,y,z=values  (元祖再赋值给变量,称为序列解包)

序列解包中的元素数量必须和放置在赋值符号=左边的变量数量完全一致。

链式赋值:x=y=somefunction()

增量赋值:x *=2

--------------------------------------------------------------------------------

在Python中,冒号(:)用来标识语句块的开始,块中的每一个语句都是缩进的,当回退到和已经闭合的块一样的缩进量时,就表示当前块已经结束了。

false:False  None  0  ""  ()  []  {}     ,本身并不相等,即False != None

true:其他

True==1  False==0

用bool(name)函数判断是属于哪种布尔值,返回True或False。

-------------------------------------------------------------------------------

if num>0:

  xxxxxx

elif num<0:

  xxxxxx

else:

  xxxxxx

比较运算符:

x is y x和y是同一个对象
x is not y x和y是不同的对象
x in y x是y容器的成员(例如序列)
x not in y x不是y容器的成员
x <>y 即x!=y
== 判断值是否相等,单个=为赋值运算符

判断语句中还可以加入and、or、not来连接语句

-------------------------------------------------------------------------------------

循环:

while循环是条件性的,而for循环是迭代的

 while循环:

while 判断语句:

  语句块

//while循环直到判断语句为假,它才终止循环

for循环:

它可以遍历序列成员,它会自动调用迭代器的next()方法,捕获StopIteration异常并结束循环

for循环会访问一个可迭代对象(序列或迭代器或支持迭代的对象[它有next()方法])中的所有元素,并再所有条目都处理过后结束循环。

for 变量 in 序列:

  语句块

例子:

for eachletter in 'names':

   print eachletter

//迭代字符串,迭代变量只会包含一个字符

for i,j in enumerate(namelist):

    print i is j

//迭代带序列号的序列元素

range():

range(0,10)  返回列表从0到9

range(start=0,end,step=1),实际上range()先用我们指定的条件生成一个列表,然后把列表用于这个for语句。start默认为0,step默认为1

for i in range(1,10,2):

    print i

xrange()与range()功能一样,但是它不会再内存里创建列表的完整拷贝,返回一个可迭代对象(不是列表也不是一个迭代器),性能远高于range()

循环遍历字典元素:

for key in d:

  print key,'corresponds to',d[key]

for key,value in d.items():                      //[(x,y),(z,s)]序列解包

  print key,'corresponds to',value

可以应用for循环的序列函数:

for i in sorted(albusm):   print i

for i in reversed(slbusm): print i

for i,j in enumerate(albusm): print i,j

for i,j in zip(albusm,ages): print i,j         //返回albusm序列和ages序列组合成新列表[(x,y),(z,s)]

 

跳出循环:

break,跳出循环

continue,跳到下一轮循环

-------------------------------------------------------------------------------------------------------------------------

pass语句:占位符的作用,什么都不做

del语句:移除一个对象的引用,也会移除那个名字本身,某个值不再使用的时候,python解释器会负责内存的回收。

exec:执行一个字符串

eval:内建函数,计算python表达式,用于求值

posted @ 2017-08-21 17:38  eudaemonia  阅读(2144)  评论(0编辑  收藏  举报