zoukankan      html  css  js  c++  java
  • Python 2.7 学习笔记 条件与循环语句

    本文介绍下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语句,就用 ''''括起来的长字符串即可。

  • 相关阅读:
    LeeCode-Invert Binary Tree
    LeeCode-Contains Duplicate
    LeeCode-Linked List Cycle
    LeeCode-Number of 1 Bits
    LeeCode-Delete Node in a Linked List
    LeeCode-Same Tree
    LeeCode-String to Integer (atoi)
    单链表复习
    POJ1258 (最小生成树prim)
    HDU1248 (完全背包简单变形)
  • 原文地址:https://www.cnblogs.com/51kata/p/5333240.html
Copyright © 2011-2022 走看看