继承的优缺点 推出继承的初衷是让新手顺利使用只有专家才能设计出来的框架.--Alan Kay 子类化内置类型很麻烦 (如 list 或 dict)) ,别搞这种 直接子类化内置类型(如 dict.list 或 str)容易出错,因为内置类型的 方法通常会忽略用户覆盖的方法. 不要子类化内置类型,用户自己定义的类应该继承 collections 模块的类, 例如UserDict.UserList 和 UserString,这些类做了特殊设计,因此易于扩展. import collections c…
2.1 可变序列与不可变序列 可变序列 list. bytearray. array.array. collections.deque 和 memoryview. 不可变序列 tuple. str 和 bytes. 2.2 列表推导和生成器表达式 列表推导是构建列表(list)的快捷方式 生成器表达式则可以用来创建其他任何类型的序列 ps: **很多 Python 程序员都把列表推导(list comprehension)简称为 listcomps,生成 式表达器(generator expre…
列表推导是构建列表(list)的快捷方式,而生成器表达式则可以用来创建其他任何类型的序列.如果你的代码里并不经常使用它们,那么很可能你错过了许多写出可读性更好且更高效的代码的机会. 2.2.1 列表推导和可读性 把一个字符串变成 Unicode 码位的列表 第一种方法 symbols = '$¢£¥€¤' codes = [] # ord() ascii字符串 转换成对应的数字 for symbol in symbols: codes.append(ord(symbol)) print(code…
Web Scraping with Python读书笔记 标签(空格分隔): web scraping ,python 做数据抓取一定一定要明确:抓取\解析数据不是目的,目的是对数据的利用 一般的数据抓取结构如下: 概要 一个简单的web数据抓取的流程就像下面的图一样 HTML获取 分析工具 Firefox Firebug 工具包 urllib urllib2 Requests phantomjs selenium 反反爬虫策略 动态设置User-Agent Cookie的使用 时间延迟/动态延…
粗略看完<Java Concurrency in Practice>这部书,确实是多线程/并发编程的一本好书.里面对各种并发的技术解释得比较透彻,虽然是面向Java的,但很多概念在其他语言的并发编程中,也可以用到.因此,开始写下其读书笔记,归纳总结. 闲话少说,从第十章开始,先上思维导图: 本章的重点,是死锁以及死锁的分析和避免方法. 10.1.1 锁的顺序产生死锁: public class WorkerThread implements Runnable{ private LeftRigh…
7.时间序列绘图 pandas时间序列的绘图功能在日期格式化方面比matplotlib原生的要好. #-*- coding:utf-8 -*- import numpy as np import pandas as pd import matplotlib.pyplot as plt import datetime as dt from pandas import Series,DataFrame from datetime import datetime from dateutil.parse…
编辑器:windows,linux 不要用notepad,缩进糟糕 -------------- 5.18缩进 同一层次的语句必须有相同的缩进.每一组这样的语句称为一个块. i = 5 2  print('Value is ', i)# Error! Notice a single space at the start of the line行首有空格 print('I repeat, the value is ', i) 当你运行的时候,会得到下面的出错信息: File "whitespace…
看这本书的目的:再熟悉基本概念. 大部分都是知道,但是需要 明确 出来的 概念. - 欢迎吐槽错误,非常感谢. <A byte of python> - THIS 1. 组织行 - 形式:#! /usr/bin/python - 告诉linux通过哪个解释器去运行 源文件. 2. print实际上是一个操作符. 3. 自然字符串(又,原始字符串) - r 或 R, 我猜 r = raw - 完全地直接输出,即使是转义符也直接输出了 >>> print r'\n\nhello'…
Python 类声明 语法: class 类名: 类体 例: #--encoding:utf-8-- # class AddressBookEntity: myVersion=0.1 def __init__(self,name,phone): self.name=name self.phone=phone def updatePhone(self,newPhone): self.phone=newPhone print 'update user\' phone :'+newPhone tom=…
原文:http://www.djangobook.com/en/2.0/frontmatter.html 译文:http://djangobook.py3k.cn/2.0/ 或者http://docs.30c.org/djangobook2/chapter01/ 其他资料:Django1.3 模板标签和过滤器:http://my.oschina.net/dddttttt/blog/304200 django documentation 1.5中文文档:http://django-chinese-…