zoukankan      html  css  js  c++  java
  • python编程导论读书笔记【3】

    ### 递归

    递归的定义包含了两部分:至少有一种基本情形可以直接得到某种特定情形的结果,至少有一种递归情形(或称归纳情形)定义了该问题在其他情形下的结果。

    世界上最简单的递归定义可能就是自然数的阶乘函数。 1!=1 (n+1)!=(n+1)*n!

    ### 斐波那契数列

    ```python
    def fib(n):
    """假定n是正整数,返回第n个斐波那契数"""
    if n == 0 or n == 1:
    return 1
    else:
    return fib(n - 1)+fib(n - 2)

    def testFib(n):
    for i in range(n + 1):
    print('fib of', i, '=', fib(i))

    ```

    ### 回文

    当两个布尔值表达式通过and 连接时。每个表达式被称为合取项。如果他们是通过or连接的,那么被称为分取项。

    ### 模块

    模块就是一个包含了python定义和语句的.py文件。

    ## 结构化类型、可变性与高阶函数

    元组:一些元素的不可变有序列表。与字符串的区别是,元组中的元素不一定是字符,其中的单个元素可以是任意类型,且它们彼此之间的类型可以不同。

    tuple类型的字面量形式是位于小括号之中的由逗号隔开的一组元素。

    包含1的单元素元组,应该写成(1,)

    可以在元组上重复操作。3*('a','2')的值就是('a','2','a','2','a','2')

    range类型的对象占用的空间与其长度不成正比,范围是由起始值、结束值和步长定义的,它的存储仅占用很小的一部分空间。

    range最常用在for循环中,range类型的对象也可以用在所有可以使用整数序列的地方。

    #### 列表与可变性

    与元组类似,列表也是值的有序序列,每个值都可以由索引进行标志。表示list类型字面量的语法与元组很类似。区别在于列表使用中括号,元组使用的是小括号。

    空列表写作[],单元素列表不需要在闭括号 前面加上逗号。

    列表与元组相比有一个特别重要的区别:列表是可变的,元组和字符串是不可变的。

    可使列表发生变化的方法:

    ```
    L.append(e): 将对象e追加到L的末尾
    L.count(e): 返回e在L中出现的次数
    L.insert(i,e): 将对象e插入L中索引值为i的位置
    L.extend(L1): 将L1中的项目增加到L的末尾
    L.remove(e):将L中第一个出现的e删除
    L.index(e): 返回e第一次出现在L中的索引值。如果e不在L中,则抛出一个异常
    L.pop(i): 删除并返回L中索引值为i的项目。如果L为空,则抛出一个异常。如果i被省略,则i的默认值为-1,删除并返回L中的最后一个元素。
    L.sort(): 升序排列L中的元素
    L.reverse(): 翻转L中的元素顺序
    ```

    负重前行
  • 相关阅读:
    HNU 12906 Battleship
    codeforces 261 D
    HDU 4939 Stupid Tower Defense(dp)
    HDU 4941 Magical Forest(map映射+二分查找)杭电多校训练赛第七场1007
    HDU 4902 Nice boat 2014杭电多校训练赛第四场F题(线段树区间更新)
    【转载】使用Pandas对数据进行筛选和排序
    【转载】使用pandas进行数据清洗
    【转载】VC维的来龙去脉
    Python-时间操作
    Pandas-数据导入
  • 原文地址:https://www.cnblogs.com/astride/p/11163730.html
Copyright © 2011-2022 走看看