P28 复制

 a = [1,2,3,[1,2]]
b = a
b is a # True
c = list[a] # shallow copy
c is a # False
c[3][0] = 100
a # [1,2,3,[100,2]]
import copy
d = copy.deepcopy(a) # deep copy, recusion
d[3][0] = 99
a # [1,2,3,[100,2]]

P29 Python 中一切都是第一类的

Before

 line = "Good, 100, 490.10"
foo = line.split(',') result = [str(foo[0]), int(foo[1]), float(foo[2])] print result

After

 line = "Good, 100, 490.10"
foo = line.split(',')
t = [str, int, float] result = [ty(val) for ty,val in zip(t, foo)] print result

P90 生成器表达式

 f = open("data.txt")
lines = (t.strip() for t in f) comments = (t for t in lines if t[0] == '#')
for c in comments:
print(c)

这样不会把整个文件读到内存中,提取注释时也是这样。

P63

等于运算符 == (测试x和y的值是否相等)

身份运算符 is (测试两个对象是否引用了内存中的同一个对象,可能 x==y 但是 x is not y)

P64 条件表达式

minValue = a if a <= b else b

先计算中间的条件 如果为 True 在对if语句左边的表达式求值,不然对else后面的表达式求值

python参考手册 Read的更多相关文章

  1. 《python参考手册(第四版)》【PDF】下载

    <python参考手册(第四版)>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382222 内容介绍 本书是权威的Python语 ...

  2. python参考手册--第1章python简介

    1.if __name__ == '__main__': 直接运行myModel.py时,当前模块的名字是main:import myModel然后运行的时候当前模块的名字是myModel. 2.ev ...

  3. python参考手册--第9章

    1.读取命令行选项 (1)sys.args python启动时,命令行选项设置在列表sys.args中. sys.args[0]:xxx.py sys.args[1:]: 其他参数 (2)optpar ...

  4. python参考手册--第8章

    1.模块和import (1)首次import module会做以下3件事: a)创建新的命名空间,用作在该源文件中定义的所有对象的容器.在模块中定义的函数和方法在使用global语句时将访问该命名空 ...

  5. python参考手册--第4、5、6、7章

    1.zip zip(s,t):将序列组合为一个元组序列[(s[0],t[0]), (s[1],t[1]), (s[2],t[2]), (s[3],t[3]),...] >>> s = ...

  6. python参考手册--第2章词汇和语法约定

    1.续行符\ 三引号.().{}.[]中的内容不需要续行符 2.空格缩进 优选空格作为缩进,不要用tab,这是因为不同操作系统下tab对应的空格不一样,而python是通过严格的空格来控制语句块的. ...

  7. python参考手册--第10、11章执行环境、调试

    1.解释器选项和环境 python [options] [-c cmd | filename | - ] [args] 例如:python -m pdb test.py 以脚本的形式运行库模块pdb ...

  8. python参考手册一书笔记之第一篇上

    在python2和python3的版本差异很大输出hello world的方法在2里支持在3里就不支持了. print 'hello world' #在2中支持 print ('hello world ...

  9. python参考手册--第3章类型和对象

    1.对象的身份.类型.值 (1)身份:对象在内存中位置的指针,地址值, >>> a = [1,2,3,4,5] >>> id(a)48497328 >> ...

随机推荐

  1. C栈stack

    栈是一种  特殊的线性表 栈仅能在线性表的一端进行操作 栈顶(Top):允许操作的一端 栈底(Bottom):不允许操作的一端 Stack的常用操作 创建栈 销毁栈 清空栈 进栈 出栈 获取栈顶元素 ...

  2. Linux进程IPC

    IPC mechanisms supported by Linux include pipes, named pipes, semaphores, message queues, shared mem ...

  3. mfc模态对话框

    Mfc模态对话框: 创建模态对话框: [模态对话框:具有独占行为,必须由用户完成对当前对话框的响应,才能对本对话框所属的进程进行其他操作] 例如: 我们创建一个加法计算器.点击计算之后,弹出一个对话框 ...

  4. c++与c不太相同的一些地方2

    1.一般全局变量放到cpp 文件里面,而不是.h 里面.要不然容易乱套,这个乱几次就好了,先记住这样一种编码规范. 以为大家都引入就比较麻烦,但是实现起来就只有cpp里面才有.毕竟.h是要被包含的文件 ...

  5. Linux下librdkafka客户端的编译运行

    Linux下librdkafka客户端的编译运行 librdkafka是一个开源的Kafka客户端C/C++实现,提供了Kafka生产者.消费者接口. 由于项目需要,我要将Kafka生产者接口封装起来 ...

  6. Elasticsearch template(待续...)

    动态模板 Dynamic templates allow you to define custom mappings that can be applied to dynamically added ...

  7. ubuntu 安装 JVM 与 ElasticSearch

    测试环境: Ubuntu x86_64 3.13.0-35-generic 安装jre: $ sudo apt-get install software-properties-common $ sud ...

  8. jmap命令

    一.jmap -heap PID using parallel threads in the new generation.  ##新生代采用的是并行线程处理方式 using thread-local ...

  9. Thinkphp kindeditor 内容转义

    参考了:[解决]ThinkPHP整合Html编辑器时出现自动转义的问题 遇到问题也是保存到数据库中的内容,会转义成“\"” 使用 $data['content'] = stripslashe ...

  10. Tinymce4 中Ajax多次加载时,会出现菜单在第二次进入时,显示的下拉菜单在左上角

    在项目中,ajax多次导入tinymce的js包 参考了: Having issues with Multiple AJAX refresh and TinyMCE load page with ti ...