• [Book Content]Python进阶


    python进阶

    原书内容https://github.com/eastlakeside/interpy-zh

    通过记录书本目录和大概内容做一个记录,方便以后回顾检索。

    Chapter Title Brief More
    1 *argv和**kwargv 给函数输入可变参数 argv为列表,kwargv为字典
    2 调试pdb 代码层面下断点调试
    3 生成器 定义了__iter__或__getitem__的为可迭代对象,定义了__next__的为迭代器 yeild的用处
    4 Map, Filter and Reduce - map会将一个函数映射到一个列表上的所有函数,map(function_to_apply, list_of_outputs)。python3返回一个迭代器,list返回列表。
    - filter过滤列表中的元素,并且返回一个由所有符合要求的元素所构成的列表。
    - reduce可以对一个列表进行一些计算并返回结果,类似归并。
    5 set数据结构 set不能包含重复元素 - 交集:set1.intersection(set2)
    - 差集:set1.difference(set2)
    6 装饰器 在执行一个函数期间需要执行其他操作,可以使用装饰器,更简单的就是定义装饰器然后使用@
    7 对象变动Mutation 注意默认值,且python默认值只初始一次
    8 __slots__魔法 节省小类的资源
    9 虚拟环境 virtualenv
    10 Collections defaultdict, counter, deque, namedtuple, enum.Enum
    11 枚举 Enumerate
    12 对象自省(introspection) dir, type, id, inspect
    13 推导式(comprehension) 从一种数据序列构建另一种新的数据序列的结构体 eg. list, dict, set 集合的推倒式为{},因为()生成的是迭代器
    14 异常 try, except, finally, else 不管触不触发异常都执行finally,异常不触发执行else
    15 lambda表达式 lambda 参数: 操作(参数)
    16 一行式 简易WebServer
    漂亮的打印
    脚本性能分析
    csv转json
    列表flat
    一行构造器
    python3 -m http.server
    from pprint import pprint
    python -m cPorfile my_script.py
    ...
    17 for else 当循环完整执行后执行else语句
    18 使用C扩展 Ctypes, SWING, Python/C API
    19 协程 如果迭代器是数据的生成者,那么协程就是消费者 line = (yield), 通过外部send给协程,就可以执行后续的if pattern in line,关闭用close()
    20 函数缓存 函数缓存允许我们将一个函数对于给定参数的返回值缓存起来 @lr_cache(maxsize=32), 清除缓存使用function.cache_clear()
    21 上下文管理(with语法) 基于类实现__enter__和__exit__
    处理异常
    基于生成器@contextmanager
  • 相关阅读:
    zoj 1671 Walking Ant【简单bfs】
    hdoj 2717 Catch That Cow【bfs】
    hdoj 1010 Tempter of the Bone【dfs查找能否在规定步数时从起点到达终点】【奇偶剪枝】
    poj 1321 棋盘问题【dfs】
    [LC] 124. Binary Tree Maximum Path Sum
    [LC] 113. Path Sum II
    [LC] 112. Path Sum
    [LC] 98. Validate Binary Search Tree
    [LC] 39. Combination Sum
    [LC] 159. Longest Substring with At Most Two Distinct Characters
  • 原文地址:https://www.cnblogs.com/mangoyuan/p/8870897.html
Copyright © 2020-2023  润新知