美文网首页
python3基本语法

python3基本语法

作者: wsj1211 | 来源:发表于2019-04-11 14:18 被阅读0次

    控制语句

    if condition_1:
        statement_block_1
    elif condition_2:
        statement_block_2
    else:
        statement_block_3
    

    Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。
    注意:
    1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
    2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
    3、在Python中没有switch – case语句。

    循环语句

    while 判断条件:
        语句
    

    同样需要注意冒号和缩进。另外,在Python中没有do..while循环。

    for循环

    for <variable> in <sequence>:
        <statements>
    else:
        <statements>
    

    您可以结合range()和len()函数以遍历一个序列的索引,如下所示:

    >>>a = ['Google', 'Baidu', 'Runoob', 'Taobao', 'QQ']
    >>> for i in range(len(a)):
    ...     print(i, a[i])
    ... 
    0 Google
    1 Baidu
    2 Runoob
    3 Taobao
    4 QQ
    >>>
    

    还可以使用range()函数来创建一个列表:
    `>>>list(range(5))
    [0, 1, 2, 3, 4]

    `

    高阶函数:

    map()/reduce()函数

    map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。

    >>> def f(x):
    ...     return x * x
    ...
    >>> r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])
    >>> list(r)
    [1, 4, 9, 16, 25, 36, 49, 64, 81]
    

    map()作为高阶函数,事实上它把运算规则抽象了,因此,我们不但可以计算简单的f(x)=x2,还可以计算任意复杂的函数,比如,把这个list所有数字转为字符串:

    >>> list(map(str, [1, 2, 3, 4, 5, 6, 7, 8, 9]))
    ['1', '2', '3', '4', '5', '6', '7', '8', '9']
    

    reduce把一个函数作用在一个序列[x1, x2, x3, ...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,其效果就是:

    >>> from functools import reduce
    >>> def add(x, y):
    ...     return x + y
    ...
    >>> reduce(add, [1, 3, 5, 7, 9])
    25
    

    求和运算有内置的sum函数更简单,没必要动用reduce。

    但是如果要把序列[1, 3, 5, 7, 9]变换成整数13579,reduce就可以派上用场:

    >>> from functools import reduce
    >>> def fn(x, y):
    ...     return x * 10 + y
    ...
    >>> reduce(fn, [1, 3, 5, 7, 9])
    13579
    

    filter()函数

    用于过滤序列,

    相关文章

      网友评论

          本文标题:python3基本语法

          本文链接:https://www.haomeiwen.com/subject/nudtwqtx.html