python-cookbook第三版学习笔记
程序猿玩AI
玩AI的程序猿,分享AI工具,AI智能体知识。公众号:程序猿玩AI
展开
-
python-cookbook学习笔记四
过滤序列元素:有一个序列,想从其中过滤出想要的元素。最常用的办法就是列表过滤:比如下面的形式:这个表达式的意义是从1000个随机数中选出大于400的数据test=[]for i in range(1000): test.append(random.randint(1,1000))ret=[n for n in test if n >400]根据cookbook书上的描原创 2017-04-10 22:23:03 · 372 阅读 · 0 评论 -
python cookbook第三版学习笔记:抽象基类
假设一个工程中有多个类,每个类都通过__init__来初始化参数。但是可能有很多高度重复且样式相同的__init__。为了减少代码。我们可以将初始化数据结构的步骤归纳到一个单独的__init__函数中,并将其定义在一个公共的基类中。示例如下:class structre(): fileds=[] def __init__(self,*args): if l...原创 2018-10-11 09:33:57 · 235 阅读 · 0 评论 -
python cookbook学习笔记十六:类和对象(1)
今天开始学习第八章的类和对象。主要学习了三个知识:__str__,with以及__slots__原创 2017-06-13 22:52:07 · 355 阅读 · 0 评论 -
python cookbook学习笔记十五:回调函数(1)
本节介绍了回调函数的用法原创 2017-06-06 21:37:29 · 431 阅读 · 0 评论 -
python cookbook学习笔记十四:函数(1)
本章节介绍了python函数的几种用法:包括lambda,partial原创 2017-06-02 11:22:57 · 415 阅读 · 0 评论 -
python-cookbook学习笔记六
如果我们有一段文本内容,在输出格式上希望改变一下。比如第一行开始空格两行,或者每行显示的字符个数。可以用textwrap来达到如下面的例子:textwrap.fill(s,110)是设置每行的字符个数为110个textwrap.fill(s,80,initial_indent=' ')是设置每行个数为80个,其中首行以3个空格开头textwrap.fill(s,80,subse原创 2017-04-23 22:38:25 · 590 阅读 · 0 评论 -
python cookbook学习笔记十二:XML解析
本章介绍了python解析xml的几种方法原创 2017-05-19 21:10:48 · 471 阅读 · 0 评论 -
python-cookbook学习笔记十一
csv以及json是很普遍的数据存储方式。本文介绍了python 读写csv以及json的方法。csv主要用于表格处理,json主要用在网络领域。下一章将介绍XML的用法原创 2017-05-09 21:34:31 · 408 阅读 · 0 评论 -
python-cookbook学习笔记七
Python中表示时间的模块是datetime,引入下面的模块from datetime import datetime,timedeltaprint datetime.today() #打印出当前的时间E:\python2.7.11\python.exe E:/py_prj/python_cookbook.py2017-04-26 21:58:05.663000 我们还原创 2017-04-26 23:05:38 · 1085 阅读 · 0 评论 -
python cookbook学习笔记十三:Struct模块
本章介绍了struct的用法原创 2017-05-23 22:29:35 · 1454 阅读 · 0 评论 -
python-cookbook学习笔记十 迭代器 三
如果我们想得到一个集合中元素的所有的组合或者排列。这里可以用到itertools.permutations 这个函数的作用是生成一个排列。def iter_combinations(): items=['a','b','c'] for p in permutations(items): print p结果如下:如果我只是想得到指定长度的原创 2017-05-04 11:12:42 · 271 阅读 · 0 评论 -
python-cookbook学习笔记九 迭代器与生成器二
我们来看下yield在类中的应用。代码如下:class Node: def __init__(self,value): self._value=value self._child=[] def __repr__(self): return "Node%s" % self._value def add_chi原创 2017-05-02 12:01:38 · 441 阅读 · 1 评论 -
python-cookbook学习笔记五
分割字符串:如果我们有这样的字符串:字符全部以,为分隔符line='asdf,fjdk,afed,fjek,asdf,foo'print line.split(',')我们可以用字符串自带的split功能进行分割,参数携带分割符号就可以了但是如果字符是这样的形式:line='asdf fjdk;afed,fjek,asdf, foo'可以看到字符串的分隔符不固定,有空格原创 2017-04-16 10:17:15 · 288 阅读 · 0 评论 -
python-cookbook学习笔记八 迭代器与生成器一
迭代器:假如我们有一个列表 items=[1,2,3].我们要遍历这个列表我们会用下面的方式For i in items: Print i首先介绍几个概念:容器,可迭代对象,迭代器容器是一种存储数据的数据结构,容器将所有数据保存在内存中,典型的容器有列表,集合,字典,字符数组等。如items就是一个列表容器。 可迭代对象:这个对象是否可迭代。如items也是一个可迭代原创 2017-04-30 22:42:08 · 397 阅读 · 0 评论 -
python-cookbook学习笔记三
通过某个关键字对字典进行排序:当我们一个列表中有多个字典,想针对某个键值对这些字典排序的时候可以采用itemgetter的方法。代码如下。用sorted进行排序,并设置比较关键参数key=itemgetter()from operator import itemgetterrows=[{'fname':'Brian','lname':'Jones','uid':1003},原创 2017-04-05 10:59:14 · 342 阅读 · 0 评论 -
python-cookbook学习笔记一
python-cookbook这边书里面有很多实用的python模块介绍,这里将我的学习笔记共享下。我用的是python-cookbook第三版,python-cookbook第三版是针对python3.3的,我采用的还是2.7.6. 但多数模块都能兼容假设有M个元素的列表,需要从中分解出N个对象,Nrecord=['zhf','zhf@163.com','775-555-1212',原创 2017-03-26 15:20:16 · 588 阅读 · 0 评论 -
python-cookbook学习笔记二
字典中的键映射多个值:一般来说字典中是一个键对应一个单值的映射,如果想一个键值映射多个值,那么就需要将这些值放到另外的容器中,比如列表或者集合。比如d={'a':[1,2]}Collections中的defaultdict模块会自动创建这样的字典。如下d=defaultdict(list)d['a'].append(1)d['a'].append(2)d['b'].appen原创 2017-04-02 20:14:47 · 329 阅读 · 0 评论 -
python cookbook第三版学习笔记:委托属性
我们想在访问实例的属性时能够将其委托到一个内部持有的对象上,这经常用到代理机制上class A: def spam(self,x): print("class_A:"+str(x)) def foo(self): passclass B: def __init__(self): self._a=A() def b...原创 2018-10-11 09:34:51 · 220 阅读 · 0 评论