第一图书网

Python核心编程(第二版)

[美]Wesley J. Chun(陳仲才) 人民邮电出版社
出版时间:

2008-06  

出版社:

人民邮电出版社  

作者:

[美]Wesley J. Chun(陳仲才)  

页数:

654  

译者:

CPUG  

Tag标签:

无  

内容概要

本书是经典的Python指导书,在第一版的基础上进行了全面升级。全书分为两个部分:第1部分占据了大约三分之二的篇幅,阐释这门语言的“核心”内容,包括基本的概念和语句、语法和风格、Python对象、数字类型、序列类型、映射和集合类型、条件和循环、文件和输入/输出、错误和异常、函数和函数式编程、模块、面向对象编程、执行环境等内容:第2部分则提供了各种高级主题来展示可以使用Python做些什么,包括正则表达式、网络编程、网络客户端编程、多线程编程、图形用户界面编程、Web编程、数据库编程、扩展Python 和一些其他材料。   本书适合Python初学者,以及已经入门但想继续学习和提高自身Python技巧的程序员。

作者简介

作者:(美国)丘恩(Wesley J.Chun) 译者:宋吉广

书籍目录

第1部分 Python核心 第1章 欢迎来到Python世界   1.1 什么是Python   1.2 起源   1.3 特点    1.3.1 高级    1.3.2 面向对象    1.3.3 可升级    1.3.4 可扩展    1.3.5 可移植性    1.3.6 易学    1.3.7 易读    1.3.8 易维护    1.3.9 健壮性    1.3.10 高效的快速原型开发工具    1.3.11 内存管理器    1.3.12 解释性和(字节)编译性   1.4 下载和安装Python   1.5 运行Python    1.5.1 命令行上的交互式解释器    1.5.2 从命令行启动脚本    1.5.3 集成开发环境    1.5.4 其他的集成开发环境和执行环境   1.6 Python文档   1.7 比较Python(Python与其他语言的比较)   1.8 其他实现   1.9 练习  第2章 快速入门   2.1 程序输出,print语句及“Hello World!”   2.2 程序输入和raw_input()内建函数   2.3 注释   2.4 操作符   2.5 变量和赋值   2.6 数字   2.7 字符串   2.8 列表和元组   2.9 字典   2.10 代码块及缩进对齐   2.11 if语句   2.12 while循环   2.13 for循环和range()内建函数   2.14 列表解析   2.15 文件和内建函数open()、file()   2.16 错误和异常   2.17 函数    2.17.1 如何定义函数    2.17.2 如何调用函数    2.17.3 默认参数   2.18 类   2.19 模块    2.19.1 如何导入模块    2.19.2 如何访问一个模块函数或访问一个模块变量   2.20 实用的函数   2.21 练习  第3章 Python基础   3.1 语句和语法    3.1.1 注释(#)    3.1.2 继续(\)    3.1.3 多个语句构成代码组(:)    3.1.4 代码组由不同的缩进分隔    3.1.5 同一行书写多个语句(;)    3.1.6 模块   3.2 变量赋值    3.2.1 赋值操作符    3.2.2 增量赋值    3.2.3 多重赋值    3.2.4 “多元”赋值   3.3 标识符    3.3.1 合法的Python标识符    3.3.2 关键字    3.3.3 内建    3.3.4 专用下划线标识符   3.4 基本风格指南    3.4.1 模块结构和布局    3.4.2 在主程序中书写测试代码   3.5 内存管理    3.5.1 变量定义    3.5.2 动态类型    3.5.3 内存分配    3.5.4 引用计数    3.5.5 垃圾收集   3.6 第一个Python程序   3.7 相关模块和开发工具   3.8 练习  第4章 Python对象   4.1 Python 对象   4.2 标准类型   4.3 其他内建类型    4.3.1 类型对象和type类型对象    4.3.2 None--Python的Null对象   4.4 内部类型    4.4.1 代码对象    4.4.2 帧对象    4.4.3 跟踪记录对象    4.4.4 切片对象    4.4.5 省略对象    4.4.6 XRange 对象   4.5 标准类型操作符    4.5.1 对象值的比较    4.5.2 对象身份比较    4.5.3 布尔类型   4.6 标准类型内建函数    4.6.1 type()    4.6.2 cmp()    4.6.3 str()和repr()(及``操作符)    4.6.4 type()和isinstance()    4.6.5 Python类型操作符和内建函数总结   4.7 类型工厂函数   4.8 标准类型的分类    4.8.1 存储模型    4.8.2 更新模型    4.8.3 访问模型   4.9 不支持的类型   4.10 练习  第5章 数字   5.1 数字简介    5.1.1 如何创建数值对象并用其赋值(数字对象)    5.1.2 如何更新数字对象    5.1.3 如何删除数字对象   5.2 整型    5.2.1 布尔型    5.2.2 标准整型    5.2.3 长整型    5.2.4 整型和长整型的统一   5.3 双精度浮点型   5.4 复数   5.5 操作符    5.5.1 混合模式操作符    5.5.2 标准类型操作符    5.5.3 算术操作符    5.5.4 *位操作符(只适用于整型)   5.6 内建函数与工厂函数    5.6.1 标准类型函数    5.6.2 数字类型函数    5.6.3 仅用于整型的函数   5.7 其他数字类型    5.7.1 布尔“数”    5.7.2 十进制浮点型   5.8 相关模块   5.9 练习  第6章 序列:字符串、列表和元组   6.1 序列    6.1.1 标准类型操作符    6.1.2 序列类型操作符    6.1.3 内建函数(BIF)   6.2 字符串   6.3 字符串和操作符    6.3.1 标准类型操作符    6.3.2 序列操作符切片([]和[:])   6.4 只适用于字符串的操作符    6.4.1 格式化操作符(%)    6.4.2 字符串模板: 更简单的替代品    6.4.3 原始字符串操作符(r/R)    6.4.4 Unicode字符串操作符(u/U)   6.5 内建函数    6.5.1 标准类型函数    6.5.2 序列类型函数    6.5.3 字符串类型函数   6.6 字符串内建函数    6.7 字符串的独特特性    6.7.1 特殊字符串和控制字符    6.7.2 三引号    6.7.3 字符串不变性   6.8 Unicode    6.8.1 术语    6.8.2 什么是Unicode    6.8.3 怎样使用Unicode    6.8.4 Codec是什么    6.8.5 编码解码    6.8.6 把Unicode应用到实际应用中    6.8.7 从现实中得来的教训    6.8.8 Python的Unicode支持   6.9 相关模块   6.10 字符串关键点总结  6.11 列表   6.12 操作符    6.12.1 标准类型操作符    6.12.2 序列类型操作符    6.12.3 列表类型操作符和列表解析   6.13 内建函数    6.13.1 标准类型函数    6.13.2 序列类型函数    6.13.3 列表类型内建函数   6.14 列表类型的内建函数   6.15 列表的特殊特性   6.16 元组   6.17 元组操作符和内建函数    6.17.1 标准类型操作符、序列类型操作符和内建函数    6.17.2 元组类型操作符和内建函数、内建方法   6.18 元组的特殊特性    6.18.1 不可变性给元组带来了什么影响    6.18.2 元组也不是那么“不可变”    6.18.3 默认集合类型    6.18.4 单元素元组    6.18.5 字典的关键字   6.19 相关模块   6.20 *拷贝Python对象、浅拷贝和深拷贝   6.21 序列类型小结   6.22 练习  第7章 映像和集合类型   7.1 映射类型:字典    7.1.1 如何创建字典和给字典赋值    7.1.2 如何访问字典中的值    7.1.3 如何更新字典    7.1.4 如何删除字典元素和字典   7.2 映射类型操作符    7.2.1 标准类型操作符    7.2.2 映射类型操作符   7.3 映射类型的内建函数和工厂函数    7.3.1 标准类型函数[type()、str()和cmp()]    7.3.2 映射类型相关的函数   7.4 映射类型内建方法   7.5 字典的键    7.5.1 不允许一个键对应多个值    7.5.2 键必须是可哈希的   7.6 集合类型    7.6.1 如何创建集合类型和给集合赋值    7.6.2 如何访问集合中的值    7.6.3 如何更新集合    7.6.4 如何删除集合中的成员和集合   7.7 集合类型操作符    7.7.1 标准类型操作符(所有的集合类型)    7.7.2 集合类型操作符(所有的集合类型)    7.7.3 集合类型操作符(仅适用于可变集合)   7.8 内建函数    7.8.1 标准类型函数    7.8.2 集合类型工厂函数   7.9 集合类型内建方法    7.9.1 方法(所有的集合方法)    7.9.2 方法(仅适用于可变集合)    7.9.3 操作符和内建方法比较   7.10 集合类型总结表   7.11 相关模块   7.12 练习  第8章 条件和循环   8.1 if语句    8.1.1 多重条件表达式    8.1.2 单一语句的代码块   8.2 else语句   8.3 elif(即else-if)语句   8.4 条件表达式(即“三元操作符”)   8.5 while语句    8.5.1 一般语法    8.5.2 计数循环    8.5.3 无限循环   8.6 for语句    8.6.1 一般语法    8.6.2 用于序列类型    8.6.3 用于迭代器类型    8.6.4 range()内建函数    8.6.5 xrange() 内建函数    8.6.6 与序列相关的内建函数   8.7 break语句   8.8 continue语句   8.9 pass语句   8.10 再谈else语句   8.11 迭代器和iter()函数    8.11.1 什么是迭代器    8.11.2 为什么要迭代器    8.11.3 如何迭代    8.11.4 使用迭代器    8.11.5 可变对象和迭代器    8.11.6 如何创建迭代器   8.12 列表解析   8.13 生成器表达式   8.14 相关模块   8.15 练习  第9章 文件和输入输出   9.1 文件对象   9.2 文件内建函数(open()和file())    9.2.1 工厂函数file()    9.2.2 通用换行符支持(UNS)   9.3 文件内建方法    9.3.1 输入    9.3.2 输出    9.3.3 文件内移动    9.3.4 文件迭代    9.3.5 其他    9.3.6 文件方法杂项   9.4 文件内建属性   9.5 标准文件   9.6 命令行参数   9.7 文件系统   9.8 文件执行   9.9 永久存储模块    9.9.1 pickle和marshal模块    9.9.2 DBM风格的模块    9.9.3 shelve模块   9.10 相关模块   9.11 练习  第10章 错误和异常   10.1 什么是异常    10.1.1 错误    10.1.2 异常   10.2 Python 中的异常   10.3 检测和处理异常    10.3.1 try-except语句    10.3.2 包装内建函数    10.3.3 带有多个except的try语句    10.3.4 处理多个异常的except语句    10.3.5 捕获所有异常    10.3.6 “异常参数”    10.3.7 在应用使用我们封装的函数    10.3.8 else子句    10.3.9 finally子句    10.3.10 try-finally语句    10.3.11 try-except-else-finally:厨房一锅端  10.4 上下文管理    10.4.1 with语句    10.4.2 *上下文管理协议   10.5 *字符串作为异常   10.6 触发异常   10.7 断言   10.8 标准异常   10.9 *创建异常   10.10 (现在)为什么用异常   10.11 到底为什么要异常   10.12 异常和sys模块   10.13 相关模块   10.14 练习  第11章 函数和函数式编程   11.1 什么是函数?    11.1.1 函数vs过程    11.1.2 返回值与函数类型   11.2 调用函数    11.2.1 函数操作符    11.2.2 关键字参数   11.2.3 默认参数    11.2.4 参数组   11.3 创建函数    11.3.1 def语句    11.3.2 声明与定义比较    11.3.3 前向引用    11.3.4 函数属性    11.3.5 内部/内嵌函数    11.3.6 *函数(与方法)装饰器   11.4 传递函数   11.5 Formal Arguments    11.5.1 位置参数    11.5.2 默认参数   11.6 可变长度的参数    11.6.1 非关键字可变长参数(元组)    11.6.2 关键字变量参数(字典)    11.6.3 调用带有可变长参数对象函数   11.7 函数式编程    11.7.1 匿名函数与lambda    11.7.2 内建函数apply()、filter()、map()、reduce()    11.7.3 偏函数应用   11.8 变量作用域    11.8.1 全局变量与局部变量    11.8.2 globa语句    11.8.3 作用域的数字    11.8.4 闭包    11.8.5 作用域和lambda    11.8.6 变量作用域和名称空间   11.9 *递归    11.10 生成器    11.10.1 简单的生成器特性       11.10.2 加强的生成器特性   11.11 练习  第12章 模块   12.1 什么是模块   12.2 模块和文件    12.2.1 模块名称空间    12.2.2 搜索路径和路径搜索   12.3 名称空间    12.3.1 名称空间与变量作用域比较    12.3.2 名称查找、确定作用域、覆盖    12.3.3 无限制的名称空间   12.4 导入模块    12.4.1 import语句    12.4.2 from-import语句    12.4.3 多行导入    12.4.4 扩展的import语句(as)   12.5 模块导入的特性    12.5.1 载入时执行模块    12.5.2 导入(import)和加载(load)    12.5.3 导入到当前名称空间的名称    12.5.4 被导入到导入者作用域的名字    12.5.5 关于__future__    12.5.6 警告框架    12.5.7 从ZIP文件中导入模块    12.5.8 “新的”导入钩子   12.6 模块内建函数    12.6.1 __import__()    12.6.2 globals()和locals()       12.6.3 reload()   12.7 包    12.7.1 目录结构    12.7.2 使用from-import导入包   12.8 模块的其他特性    12.8.1 自动载入的模块    12.8.2 阻止属性导入    12.8.3 不区分大小的导入    12.8.4 源代码编码    12.8.5 导入循环    12.8.6 模块执行   12.9 相关模块   12.10 练习  第13章 面向对象编程   13.1 引言   13.2 面向对象编程    13.2.1 面向对象设计与面向对象编程的关系    13.2.2 现实中的问题    13.2.3 *常用术语   13.3 类    13.3.1 创建类    13.3.2 声明与定义   13.4 类属性    13.4.1 类的数据属性    13.4.2 Methods    13.4.3 决定类的属性    13.4.4 特殊的类属性   13.5 实例    13.5.1 初始化:通过调用类对象来创建实例    13.5.2 __init__()“构造器”方法    13.5.3 __new__()“构造器”方法    13.5.4 __del__()“解构器”方法   13.6 实例属性    13.6.1 “实例化”实例属性(或创建一个更好的构造器)    13.6.2 查看实例属性    13.6.3 特殊的实例属性    13.6.4 建类型属性    13.6.5 实例属性vs类属性   13.7 绑定和方法调用    13.7.1 调用绑定方法    13.7.2 调用非绑定方法   13.8 静态方法和类方法    13.8.1 staticmethod()和classmethod()内建函数    13.8.2 使用函数修饰符   13.9 组合   13.10 子类和派生   13.11 继承    13.11.1 __bases__类属性    13.11.2 通过继承覆盖方法    13.11.3 从标准类型派生    13.11.4 多重继承   13.12 类、实例和其他对象的内建函数    13.12.1 issubclass()    13.12.2 isinstance()    13.12.3 hasattr()、getattr()、setattr()、delattr()    13.12.4 dir()    13.12.5 super()    13.12.6 vars()   13.13 用特殊方法定制类    13.13.1 简单定制(RoundFloat2)    13.13.2 数值定制(Time60)    13.13.3 迭代器(RandSeq和AnyIter)    13.13.4 *多类型定制(NumStr)   13.14 私有化   13.15 *授权    13.15.1 包装    13.15.2 实现授权   13.16 新式类的高级特性(Python 2.2+)    13.16.1 新式类的通用特性    13.16.2 __slots__类属性    13.16.3 __getattribute__()特殊方法    13.16.4 描述符    13.16.5 元类和__metaclass__   13.17 相关模块和文档   13.18 练习  第14章 执行环境   14.1 可调用对象    14.1.1 函数    14.1.2 方法    14.1.3 类    14.1.4 类的实例   14.2 代码对象   14.3 可执行的对象声明和内建函数    14.3.1 callable()    14.3.2 compile()    14.3.3 eval()    14.3.4 exec    14.3.5 input()    14.3.6 使用Python在运行时生成和执行Python代码   14.4 执行其他(Python)程序    14.4.1 导入    14.4.2 execfile()    14.4.3 将模块作为脚本执行   14.5 执行其他(非Python)程序    14.5.1 os.system()    14.5.2 os.popen()    14.5.3 os.fork()、os.exec*()、os.wait*()    14.5.4 os.spawn*()    14.5.5 subprocess 模块    14.5.6 相关函数   14.6 受限执行   14.7 结束执行    14.7.1 sys.exit() and SystemExit    14.7.2 sys.exitfunc()    14.7.3 os._exit() 函数    14.7.4 os.kill() Function   14.8 各种操作系统接口   14.9 相关模块   14.10 练习 第2部分 高级主题 第15章 正则表达式   15.1 引言/动机   15.2 正则表达式使用的特殊符号和字符    15.2.1 用管道符号(|)匹配多个正则表达式模式    15.2.2 匹配任意一个单个的字符(.)    15.2.3 从字符串的开头或结尾或单词边界开始匹配(^/$ /\b /\B )    15.2.4 创建字符类([])    15.2.5 指定范围(-)和否定(^)    15.2.6 使用闭包操作符(*,+,?,{})实现多次出现/重复匹配    15.2.7 特殊字符表示、字符集    15.2.8 用圆括号(())组建组   15.3 正则表达式和Python语言    15.3.1 re模块:核心函数和方法    15.3.2 使用compile()编译正则表达式    15.3.3 匹配对象和group()、groups()方法   15.3.4 用match()匹配字符串    15.3.5 search()在一个字符串中查找一个模式(搜索与匹配的比较)    15.3.6 匹配多个字符串(|)    15.3.7 匹配任意单个字符(.)    15.3.8 创建字符集合([])    15.3.9 重复、特殊字符和子组    15.3.10 从字符串的开头或结尾匹配及在单词边界上的匹配    15.3.11 用findall()找到每个出现的匹配部分    15.3.12 用sub()(和subn())进行搜索和替换    15.3.13 用split()分割(分隔模式)   15.4 正则表达式示例    15.4.1 匹配一个字符串    15.4.2 搜索与匹配的比较,“贪婪”匹配   15.5 练习  第16章 网络编程   16.1 引言    16.1.1 什么是客户端/服务器架构    16.1.2 客户端/服务器网络编程   16.2 套接字:通信端点    16.2.1 什么是套接字    16.2.2 套接字地址:主机与端口    16.2.3 面向连接与无连接   16.3 Python中的网络编程    16.3.1 socket()模块函数    16.3.2 套接字对象(内建)方法    16.3.3 创建一个TCP服务器    16.3.4 创建TCP客户端    16.3.5 运行我们的客户端与TCP服务器    16.3.6 创建一个UDP服务器    16.3.7 创建一个UDP客户端    16.3.8 执行UDP服务器和客户端    16.3.9 Socket模块属性   16.4 *SocketServer模块    16.4.1 创建一个SocketServerTCP服务器    16.4.2 创建SocketServerTCP客户端    16.4.3 执行TCP服务器和客户端   16.5 Twisted框架介绍    16.5.1 创建一个Twisted Reactor TCP服务器    16.5.2 创建一个Twisted Reactor TCP客户端    16.5.3 执行TCP服务器和客户端   16.6 相关模块   16.7 练习  第17章 网络客户端编程   17.1 什么是因特网客户端   17.2 文件传输    17.2.1 文件传输网际协议    17.2.2 文件传输协议(FTP)    17.2.3 Python和FTP    17.2.4 ftplib.FTP类方法    17.2.5 交互式FTP示例    17.2.6 客户端FTP程序举例    17.2.7 FTP的其他方面   17.3 网络新闻    17.3.1 Usenet与新闻组    17.3.2 网络新闻传输协议(NNTP)    17.3.3 Python和NNTP    17.3.4 nntplib.NNTP类方法    17.3.5 交互式NNTP举例    17.3.6 客户端程序NNTP举例    17.3.7 NNTP的其他方面   17.4 电子邮件    17.4.1 电子邮件系统组件和协议    17.4.2 发送电子邮件    17.4.3 Python和SMTP    17.4.4 smtplib.SMTP类方法    17.4.5 交互式SMTP示例    17.4.6 SMTP的其他方面    17.4.7 接收电子邮件    17.4.8 POP和IMAP    17.4.9 Python和POP3    17.4.10 交互式POP3举例    17.4.11 poplib.POP3类方法    17.4.12 客户端程序SMTP和POP3举例   17.5 相关模块    17.5.1 电子邮件    17.5.2 其他网络协议   17.6 练习  第18章 多线程编程   18.1 引言/动机   18.2 线程和进程    18.2.1 什么是进程    18.2.2 什么是线程   18.3 Python、线程和全局解释器锁    18.3.1 全局解释器锁(GIL)    18.3.2 退出线程    18.3.3 在Python中使用线程    18.3.4 没有线程支持的情况    18.3.5 Python的threading模块   18.4 thread模块   18.5 threading模块    18.5.1 Thread类    18.5.2 斐波那契、阶乘和累加和    18.5.3 threading模块中的其他函数       18.5.4 生产者-消费者问题和Queue模块   18.6 相关模块   18.7 练习  第19章 图形用户界面编程   19.1 简介    19.1.1 什么是Tcl、Tk和Tkinter    19.1.2 安装和使用Tkinter 533   19.1.3 客户端/服务器架构 534  19.2 Tkinter与Python编程 534   19.2.1 Tkinter模块:把Tk引入你的程序    19.2.2 GUI程序开发简介    19.2.3 顶层窗口:Tkinter.Tk()    19.2.4 Tk组件   19.3 Tkinter举例    19.3.1 标签组件    19.3.2 按钮组件    19.3.3 标签和按钮组件    19.3.4 标签、按钮和进度条组件    19.3.5 偏函数应用举例    19.3.6 中级Tkinter范例   19.4 其他GUI简介    19.4.1 Tk Interface eXtensions (Tix)    19.4.2 Python MegaWidgets (PMW)    19.4.3 wxWidgets和wxPython    19.4.4 GTK+和PyGTK   19.5 相关模块和其他GUI   19.6 练习  第20章 Web编程   20.1 介绍    20.1.1 Web应用:客户端/服务器计算    20.1.2 因特网   20.2 使用Python进行Web应用:创建一个简单的Web客户端    20.2.1 统一资源定位符    20.2.2 urlparse模块    20.2.3 urllib模块    20.2.4 urllib2模块   20.3 高级Web客户端   20.4 CGI:帮助Web服务器处理客户端数据    20.4.1 CGI介绍    20.4.2 CGI应用程序    20.4.3 cgi模块  20.5 建立CGI应用程序    20.5.1 建立Web服务器    20.5.2 建立表单页    20.5.3 生成结果页    20.5.4 生成表单和结果页面    20.5.5 全面交互的Web站点  20.6 在CGI中使用Unicode编码   20.7 高级CGI    20.7.1 Mulitipart表单提交和文件的上传    20.7.2 多值字段    20.7.3 cookie    20.7.4 使用高级CGI   20.8 Web(HTTP)服务器   20.9 相关模块   20.10 练习  第21章 数据库编程   21.1 介绍    21.1.1 持久存储    21.1.2 基本的数据库操作和SQL语言    21.1.3 数据库和Python   21.2 Python数据库应用程序程序员接口(DB-API)    21.2.1 模块属性    21.2.2 连接对象    21.2.3 游标对象    21.2.4 类型对象和构造器    21.2.5 关系数据库    21.2.6 数据库和Python:接口程序    21.2.7 使用数据库接口程序举例   21.3 对象-关系管理器(ORM)    21.3.1 考虑对象,而不是SQL    21.3.2 Python和ORM    21.3.3 雇员数据库举例    21.3.4 总结   21.4 相关模块   21.5 练习  第22章 扩展Python 623  22.1 引言/动机    22.1.1 什么是扩展    22.1.2 为什么要扩展Python   22.2 创建Python扩展    22.2.1 创建您的应用程序代码    22.2.2 用样板来包装你的代码    22.2.3 编译    22.2.4 导入和测试    22.2.5 引用计数    22.2.6 线程和全局解释器锁(GIL)  22.3 相关话题   22.4 练习 第23章 其他话题   23.1 Web服务   23.2 用Win32的COM来操作微软Office    23.2.1 客户端COM编程    23.2.2 微软Excel    23.2.3 微软Word 第1部分 Python核心   23.2.4 微软PowerPoint    23.2.5 微软Outlook    23.2.6 中等规模的例子  23.3 用Jython写Python和Java的程序    23.3.1 什么是Jython    23.3.2 Swing GUI开发(Java或者Python!)   23.4 练习    23.2.4 微软PowerPoint    23.2.5 微软Outlook    23.2.6 中等规模的例子   23.3 用Jython写Python和Java的程序    23.3.1 什么是Jython    23.3.2 Swing GUI开发(Java或者Python!)   23.4 练习

章节摘录

插图:第1部分 Python核心第1章 欢迎来到Python世界开篇将介绍一些Python的背景知识,包括什么是Python、Python的起源和它的一些关键特性。一旦你来了兴致,我们就会向你介绍怎样获得Python,以及如何在你的系统上安装并运行它。本章最后的练习将会帮助你非常自如地使用Python,包括使用交互式解释器,以及创建并运行脚本程序。1.1 什么是PythonPython是一门优雅而健壮的编程语言,它继承了传统编译语言的强大性和通用性,同时也借鉴了简单脚本和解释语言的易用性。它可以帮你完成工作,而且一段时问以后,你还能看明白自己写的这段代码。你会对自己如此快地学会它和它强大的功能感到十分的惊讶,更不用提你已经完成的工作了!只有你想不到,没有Python做不到。1.2 起源Guido van Rossum于1989年底始创了Python,那时,他还在荷兰的CWI(Centrum voor Wiskunde en Informatica,国家数学和计算机科学研究院)。1991年初,Python发布了第一个公开发行版。这一切究竟是如何开始的呢?像C、C++、Lisp、.Java和Perl一样,Python来自于某个研究项目,项目中的那些程序员利用手边现有的工具辛苦地工作着,他们设想并开发出了更好的解决办法。那时van Rossum是一位研究人员,对解释型语言ABC有着丰富的设计‘经验,这个语言同样也是在CWI开发的。但是他不满足其有限的开发能力。已经使用并参与开发了像ABC这样的高级语言后,再退回到C语言显然是不可能的。他所期望的工具有一些是用于完成日常系统管理任务的,而且它还希望能够访问Amoeba分布式操作系统的系统调用。尽管vanRossum也曾想过为Amoeba开发专用语言,但足创造一种通用的程序设计语言显然更加明智,于是在1989年末,Python的种子被播下了。1.3 特点尽管Python已经流行了超过15年,但是一些人仍旧认为相对于通用软件开发产业而言,它还是个新丁。我们应当谨慎地使用“相对”这个词,因为“网络时代”的程序开发,几年看上去就像几十年。当人们询问:“什么是Python?”的时候,很难用任何一个具象来描述它。人们更倾向于一口气不加思索地说出他们对Python的所有感觉,Python是一(请填写),这些特点究竟又是什么呢?为了让你能知其所以然,我们下面会对这些特点进行逐一地阐释。1.3.1 高级伴随着每一代编程语言的产生,我们会达到一个新的高度。汇编语言是献给那些挣扎在机器代码中的人的礼物,后来有了FORTRAN、c和Pascal语言,它们将计算提升到了崭新的高度,并且开创了软件开发行业。伴随着C语言诞生了更多的像c斗_卜、Java这样的现代编译语言。我们没有止步于此,于是有了强大的、可以进行系统调用的解释型脚本语言,例如Tcl、Perl和Python。这些语言都有高级的数据结构,这样就减少了以前“框架”开发需要的时间。像Python中的列表(大小可变的数组)和字典(哈希表)就是内建于语言本身的。在核心语言中提供这些重要的构建单元,可以鼓励人们使用它们,缩短开发时间与代码量,产生出可读性更好的代码。在C语言中,对于混杂数组(Python中的列表)和哈希表(Python中的字典)还没有相应的标准库,所以它们经常被重复实现,并被复制到每个新项目中去。这个过程混乱而且容易产生错误。


编辑推荐

《Python核心编程(第2版)》提供了对Python核心特性系统的专家级讲解;开发复杂的应用程序和软件所需的强大深入的视角:易用的图表,详细描述了Pyffion模块、操作符、函数和方法:大量的专业级实例代码,从小的代码片段到功能齐全的应用程序一应俱全。

图书封面

图书标签Tags

广告

下载页面


Python核心编程(第二版) PDF格式下载



本书是经典的Python指导书,在第一版的基础上进行了全面升级。全书分为两个部分:第1部分占据了大约三分之二的篇幅,阐释这门语言的“核心”内容,包括基本的概念和语句、语法和风格、 Python对象、数字类型、序列类型、映射和集合类型、条件和循环、文件和输入/输出、错误和异常、函数和函数式编程、模块、面向对象编程、执行环境等内容:第2部分则提供了各种高级主题来展示可以使用Python做些什么,包括正则表达式、网络编程、网络客户端编程、多线程编程、图形用户界面编程、 Web编程、数据库编程、扩展Python 和一些其他材料。 

本书适合Python初学者,以及已经入门但想继续学习和提高自身Python技巧的程序员。


还行,质量不错Python核心编程(第二版)(Python领域最经典、最权威的开发指南)


python核心编程这本书易于入门阅读,而且能够坚持技术导向,引领python领域发展的最新潮流,通俗易懂,语言通俗但道理不俗,可以与时俱进,是一本开放的理论与实践的教程,并不随版本的更新而过时,覆盖内容面广,但内容较深入,配备的习题可以加深理解各种概念及原理,据说习题搞定一半就是高手了,总之是一本不可多得的好书。


python核心编程和python学习手册,我都买了,阅读之后发现python核心比较实用,
一本回家看,一本在公司业余看!
不能浪费了!
各本出发点不同!


python核心编程,很好的书


python核心编程一拿回来的下午就迫不及待的读了好几章,讲的非常细致易懂,强荐!


先声明现在python已经到3.2了,但这本书讲的为2.6版本的python,确实与新版本的python有些不同,但这真是一本好书,特别适合有编程基础的,书中总是用python与c之类的对比,非常好。


帮助我进入了python的世界,最爱的编程语言~!


这本书详细地介绍了Python,使人能做出实用的Python脚本。看这书之前我不觉得脚本语言有多么强大。看过才知道原来用C/C++很费劲做出的东西脚本语言(套接字,文件访问等)只用几行代码就能做出来。现在我做小工具都用Python做了!! 但有一点请注意,本书作者使用的是Python2.x,而到Python3.x时有很大的变化,读者学习本书时应下载2.x.x的版本(2.x的资料,扩展库也多),学会了想转3.x也是很容易的


深入浅出的讲解了Python的基本用法,同时对Python与强类型语言的衔接也做了介绍,不错的一本入门级教程


(Python领域最经典、最权威的开发指南)


书还可以,应当说是对Python的学习还是有很大帮助的,不足之处是偶尔有些排版错误,不过也无大碍了。此书不是特别适合初学者,有些例子可能不太适合初学者。再一个面向对象的那一部分讲得不是很深入!


Python是一个非常讲究格式的语言,从这边书的印刷来说,示例代码缩进什么的都很恰当,跟着示例走应该不会出什么问题。

语言的翻译相当准确,不愧是社区爱好者合作的结果,比起那些仅仅只是为了翻译而翻译的书,这本书真正的说明了Python所需的知识要点,我觉得是一本不可多得的好书。

就像之前人所说的,这本书也是一本被偷窃的书,社区的成果被个人攫取了,如果以后都是这样的话估计再也不会有社区愿意做这样的事情,对国内语言、科技界的伤害太大了,唉……为一己私利……真是恶心。如果这样的事情不被惩罚,真的是没有天理了。


很详细的介绍了 python这么面向对象语言。 例子讲解非常详细 好评


应该是Python比较新的书了,希望出版社能够重新仔细校对一下书上的代码,因为Python程序是代码块缩进形式,所以排版很重要,否则会造成误解。


python语法讲的很透彻。入门和深入都是不错的书


很好的一本书,易懂,大家都说是很经典的一本学习python的书,个人认为确实这样


正准备学python,很好的入门书


对python语言,库的讲解非常细致.适合初学到精通.


感觉python这个语言太强大了!!!读了2章,感觉还不错。强烈推荐!!!!!!!!!!!


对python的讲解详实,是入门的好教材


作为入门的书,看起来还是挺不错的。内容很全, 方面方面都涉及到了,没有太多的领悟, 就在买的时候一周内就看完了, 对python有了大致的了解


在网上看了好久,到底哪本书适合新手学习python,最终选择了这本,感觉讲的很全面,书的纸质也可以,送货速度也很快~给个满分。。


作为一个初学者,看完这本书,我了解了python。


N多的印刷错误,翻译错误,排版错误 书是盗书 作者连个联系方式都不敢留 都没法甄误 不过英文原著肯定是本好书! Python启蒙第一该看的书


这是学习python入门必看的书!


学python经典著作,必看………………


python 经典的经典书籍 老师推荐的书籍


Python的经典之作~~~


很经典的python书籍


不贵,500页,拿电子版打印也要不少钱。
python很棒,做自然语言处理的锐器


很想学习Python 这边书不错 比较喜欢!


想学Python的人可以考虑买这本书.


决定好好学好python 深入点 然后看看goagent源码 本书很好


比较适合刚接触Python以及对Python知识点进行扩充的开发者,推荐此书


相对比较全面和系统,要是能快速引进更多新的python著作就好了。


值得一看的书,算是python入门的书,人民邮电的书不会让你失望的


目前在学习Python,希望能够快速提高


学习python的话,这本书很实用,推荐~


一直想学一下python,现在OK了


这是一本学习python的好书,建议大家买买看看


很好的python学习的书


发货很快,正好在学习python,帮助很多


学习Python的不错的教材


感觉拿来学习python刚刚好~


学习python的必备书之一


确实对学习python帮助很大


买过一本,再买一本给学生看。学python很好的书。


Python很有趣,看了几十页了,不错!


打算学一下python,昨天订的今天就到了,给个满分吧


结合着python官方文档看


比价好的一本python书


对于初学python来说,很有用


学python必看


算是python的大作吧,值得去度以下


大概看看吧。。学好python还是很有必要的


期待更多的python书籍


讲得非常详细,不仅适合初学者,对编程老手也很有帮助


比较好的编程书,书的质量也很不错


从基础到一些应用,讲得很清楚,适合初学者,对中级用户而言,是本参考读物,8错8错!


书本纸质不错,发货也挺快。书的内容由浅入深,比较适合初学者。从基础的安装到相关的维护备份,是一本不错的书。目前已经看了一半了,总体的感觉不错。至于附带的光盘应为是PPT并不是很实用,本以为会附带下实例的数据库,很多时候只能自己新建并导入相关的练习库。也有好处能多多自己练习


一个字:好!两个字:很好!三个字:非常好!真的非常适合初学者用~~不过如果有程序基础就更好了~


适合新手,编写基于系统管理方面的程序,对于写WEB或GUI类程序,还是有点弱!


内容讲解很到位,学习语言的好方法。方便初学者学习,也适合更深层次的学习理解。


除了有少数地方代码缩进错误外,基本没什么问题


书的印刷质量很好,崭新的书拿在手上很有感觉,虽然有电子版的但是纸质的翻起来还是更有感觉,内容很全面适合入门。


确实经典的指导书


非常详细,无论当入门级教材,还是当参考书用,都非常不错的


是本好书,内容很全,适合入门学习!


好久好久好久以前买过第一版,后来就不知道哪里去了,第二版买一本存着先


还可以,适合初级人员入门,高级人员速查手册,呵呵


随便翻了一下,觉得内容成系统,讲解详细。


写的挺全面,简明而不乱。不像国内的学者,对程序一点不理解,就会乱盖。


很适合初学者,也适合深入研究


刚看到前几章,讲得比较深入,适合初学者...至于翻译,基本可以接受......


内容 很适合 初学者 对已有经验的 还有用


内容详细,便于入门


很不错的一本pytthon书,适合入门和提高。


内容比较基础,也很全面,适合新手


从入门到深入了解,不可缺少的一本书


虽然程序有点小错误,但是经过简单的修改,可以运行的!


这个商品不错 很实用 适合初学者


以前看过电子版的,一直想买本。刚拿到书,打算作为Phython入门。


非常适合刚入门的读者


介绍的很全面,本来想自己买来学习的,后来公司给报销了,嘻嘻


感觉这本书不错,内容很详细,包含的东西很丰富


这本书的内容很充实,而且相对简介,虽然其中有一些废话和印刷错误...


完全没写过程序的人不推荐买这本,虽然内容也有很基础的,但是没有那个渐进的过程,新手很容易受挫。对于懂了基础知识的,或者有过别的语言经验的人来说,应该不错。我是完全没经验,所以只好留着学好基础以后再看啦~


初看了之后,让我对这一门语言产生的浓厚的兴趣,希望看到更多这方面的书籍!


这本书对初学者来说真心不错


很给力的一本书 适于初学者和进一步专研


介绍的方法用法还是比较详细,作为工具书学习还不错。


蛮基础的,适合自己初学的人学习,会受益匪浅的。


入门学习很好的工具书


看了好久,翻着看还是容易些


经典的书,虽然还没读


非常不错,果真是经典


经典书籍 多看几遍


很不错的经典书籍


不用多说,绝对的经典


相关图书