翻译:《实用的Python编程》05_00_Overview

2021-03-12
阅读 1 分钟
1k
本节介绍 Python 对象的内部工作原理。来自其它语言的程序员通常会发现 Python 的类概念缺乏特性。例如,没有访问控制(access-control)的概念(如:private,protected),self 参数让人感觉很奇怪,并且,坦白地说,使用对象有时候让人感到“一切都是开放的”。虽然某种程度上来说也许是这样,但是我们要了解其工作原理...
封面图

翻译:《实用的Python编程》05_00_Overview

2021-03-12
阅读 1 分钟
990
本节介绍 Python 对象的内部工作原理。来自其它语言的程序员通常会发现 Python 的类概念缺乏特性。例如,没有访问控制(access-control)的概念(如:private,protected),self 参数让人感觉很奇怪,并且,坦白地说,使用对象有时候让人感到“一切都是开放的”。虽然某种程度上来说也许是这样,但是我们要了解其工作原理...
封面图

翻译:《实用的Python编程》04_04_Defining_exceptions

2021-03-10
阅读 1 分钟
1.2k
目录 | 上一节 (4.3 特殊方法) | 下一节 (5 对象模型)4.4 定义异常用户可以通过类实现自定义异常: {代码...} 异常类始终继承自 Exception 它们通常是空类。空类内部使用 pass 表示。你也可以对异常进行分层: {代码...} 练习练习 4.11:自定义异常通常情况下,为库定义自己的异常是一种良好的习惯。这样可以更容易区分...
封面图

翻译:《实用的Python编程》04_03_Special_methods

2021-03-09
阅读 5 分钟
1.4k
可以通过特殊方法(或者称为"魔术"方法(magic method))自定义 Python 行为的各部分。本节介绍特殊方法的思想。此外,还将讨论动态属性访问和绑定方法。
封面图

翻译:《实用的Python编程》04_02_Inheritance

2021-03-08
阅读 11 分钟
1.5k
新类 Child 称为派生类(derived class)或子类(subclass)。类 Parent 称为基类(base class)或超类(superclass)。在子类名后的括号 () 中指定基类(Parent),class Child(Parent):。
封面图

翻译:《实用的Python编程》04_01_Class

2021-03-07
阅读 5 分钟
1k
目录 | 上一节 (3.6 设计讨论) | 下一节 (4.2 继承)4.1 类本节介绍 class 语句以及创建新对象的方式。面向对象编程(OOP)面向对象编程是一种将代码组织成对象集合的编程技术。一个对象包括:数据。属性行为。方法——应用于对象的函数。在本课程中,你已经使用了面向对象编程技术。例如,操作列表。 {代码...} nums 是列...
封面图

翻译:《实用的Python编程》04_00_Overview

2021-03-06
阅读 1 分钟
1.1k
到目前为止,我们的程序仅使用了内置的 Python 数据类型。本节,我们介绍类(class)和对象(object)的概念。你将学习 class 语句,该语句允许你创建新的对象。我们还将介绍继承(inheritance)的概念,继承通常用于构建可扩展的程序。最后,我们将研究类的一些其它特性,包括特殊方法,动态属性查找以及自定义异常。
封面图

翻译:《实用的Python编程》03_06_Design_discussion

2021-03-05
阅读 2 分钟
1k
目录 | 上一节 (3.5 主模块) | 下一节 (4 类)3.6 设计讨论本节,我们重新考虑之前所做的设计决策。文件名与可迭代对象考虑以下两个返回相同输出的程序。 {代码...} {代码...} 你更倾向于使用哪个函数?为什么?哪个函数更灵活?鸭子类型(Duck Typing)在计算机程序设计中,鸭子类型 用于确定一个对象是否可用于特定目的...
封面图

翻译:《实用的Python编程》03_05_Main_module

2021-03-04
阅读 4 分钟
1.4k
目录 | 上一节 (3.4 模块) | 下一节 (3.6 设计讨论)3.5 主模块本节介绍主程序(主模块)的概念主函数在许多编程语言中,存在一个主函数或者主方法的概念。 {代码...} {代码...} 这是启动应用程序时执行的第一个函数。Python 主模块Python 没有主函数(main function)或主方法(main method)。相反,Python 有一个主模...
封面图

翻译:《实用的Python编程》03_04_Modules

2021-03-03
阅读 5 分钟
1.1k
目录 | 上一节 (3.3 错误检查) | 下一节 (3.5 主模块)3.4 模块本节介绍模块的概念以及如何使用跨多个文件的函数。模块和导入任何一个 Python 源文件都是一个模块。 {代码...} import 语句加载并执行一个模块。 {代码...} 命名空间模块是命名值的集合,有时也称为命名空间。名称是源文件中定义的所有全局变量和函数。导入...
封面图

翻译:《实用的Python编程》03_03_Error_checking

2021-03-02
阅读 6 分钟
1.2k
目录 | 上一节 (3.2 深入函数) | 下一节 (3.4 模块)3.3 错误检查虽然前面已经介绍了异常,但本节补充一些有关错误检查和异常处理的其它细节。程序是如何运行失败的Python 不对函数参数类型或值进行检查或者校验。函数可以处理与函数内部语句兼容的任何数据。 {代码...} 如果函数中有错误,它们将(作为异常)在运行时出...
封面图

翻译:《实用的Python编程》03_02_More_functions

2021-03-01
阅读 9 分钟
1.1k
目录 | 上一节 (3.1 脚本) | 下一节 (3.3 错误检查)3.2 深入函数尽管函数在早先时候介绍了,但有关函数在更深层次上是如何工作的细节却很少提供。本节旨在填补这些空白,并讨论函数调用约定,作用域规则等问题。调用函数考虑以下函数: {代码...} 可以使用位置参数调用该函数: {代码...} 或者,可以使用关键字参数调用...
封面图

翻译:《实用的Python编程》03_01_Script

2021-02-28
阅读 4 分钟
1.1k
目录 | 上一节 (2.7 对象模型) | 下一节 (3.2 深入函数)3.1 脚本在该部分,我们将深入研究编写 Python 脚本的惯例。什么是脚本?脚本就是运行和终止一系列语句的程序。 {代码...} 到目前为止,我们主要在编写脚本。问题如果你编写一个有用的脚本,它的特性和功能将会增加。你可能想要将其应用于相关的问题。随着时间的推...
封面图

翻译:《实用的Python编程》03_00_Overview

2021-02-27
阅读 1 分钟
1k
到目前为止,我们已经学习了一些 Python 基础知识并编写了一些简短的脚本。但是,当开始编写更大的程序时,我们会想要有条理地组织这些程序。本节将深入讨论关于函数编写,错误处理以及模块的更多细节。最后,您应该能够编写跨多个文件的,并细分为函数的程序。我们还将提供一些有用的代码模板,以编写更有用的脚本。
封面图

翻译:《实用的 Python 编程》02_07_Objects

2021-02-26
阅读 6 分钟
1k
目录 | 上一节 (2.6 列表推导式) | 下一节 (3 程序组织)2.7 对象本节介绍有关 Python 内部对象模型的更多详细信息,并讨论一些与内存管理,拷贝和类型检查有关的问题。赋值Python 中的许多操作都与赋值或者存储值有关。 {代码...} 警告:赋值操作永远不是值拷贝。所有的赋值操作都是引用拷贝(如果你乐意,也可以说是指...
封面图

翻译:《实用的Python编程》02_06_List_comprehension

2021-02-25
阅读 5 分钟
1.2k
目录 | 上一节 (2.5 collections模块) | 下一节 (2.7 对象模型)2.6 列表推导式一个常见的任务是处理列表中的项(译注:元素)。本节介绍列表推导式,完成此任务的强大工具。创建新列表列表推导式通过将操作应用于序列的每一个元素来创建新列表。 {代码...} 再如: {代码...} 列表推导式的一般语法是:[ <expression&gt...
封面图

翻译:《实用的Python编程》02_05_Collections

2021-02-24
阅读 3 分钟
1.1k
目录 | 上一节 (2.4 序列) | 下一节 (2.6 列表推导式)2.5 collections 模块collections 模块为数据处理提供了许多有用的对象。本部分简要介绍其中的一些特性。示例:事物计数假设要把每只股票的总份额表格化。 {代码...} 此表中有两个 IBM 条目,两个 GOOG 条目,它们应该以某种方式合并到一起。计数解决方案:使用 Coun...
封面图

翻译:《实用的Python编程》02_04_Sequences

2021-02-23
阅读 7 分钟
1.3k
目录| 上一节 (2.3 格式化) | 下一节 (2.5 Collections模块)2.4 序列序列数据类型Python 有三种序列数据类型。字符串:如 'Hello'。字符串是字符序列列表:如 [1, 4, 5]。元组:如 ('GOOG', 100, 490.1)。所有的序列都是有序的,由整数进行索引,并且具有长度。 {代码...} 序列可以通过重复操作符 * 进行重复:s * n 。 ...
封面图

翻译:《实用的Python编程》02_03_Formatting

2021-02-22
阅读 5 分钟
1.1k
目录 | 上一节 (2.2 容器) | 下一节 (2.4 序列)2.3 格式化虽然本节稍微有点离题,但是当处理数据时,通常想要生成结构化的输出(如表格)。示例: {代码...} 字符串格式化在 Python 3.6+ 中,格式化字符串的一种方法是使用 f-strings: {代码...} {expression:format} 部分会被取代。f-strings 通常和 print() 函数一起...
封面图

翻译:《实用的Python编程》02_02_Containers

2021-02-21
阅读 6 分钟
1.4k
目录 | 上一节 (2.1 数据类型) | 下一节 (2.3 格式化)2.2 容器本节讨论列表(list),字典(dict)和集合(set)。概述通常,程序必须处理许多对象。股票的投资组合股票价格表这里有三种主要的选择(译注:数据结构)可以使用:列表。有序的数据。字典。无序的数据。集合。互异且无序的数据。把列表当作容器当数据顺序很...
封面图

翻译:《实用的Python编程》02_01_Datatypes

2021-02-20
阅读 5 分钟
1.3k
目录 | 上一节 (1.7 函数) | 下一节 (2.2 容器)2.1 数据类型和数据结构本节以元组和字典为代表介绍数据结构。原始数据类型Python 有一些原始数据类型:整数浮点数字符串(文本)空类型 {代码...} None 常用作可选值或缺失值的占位符。它在条件语句中计算为 False。 {代码...} 数据结构实际的程序具有更复杂的数据。例如...
封面图

翻译:《实用的Python编程》01_07_Functions

2021-02-19
阅读 4 分钟
1.2k
目录 | 上一节 (1.6 文件) | 下一节 (2.0 处理数据)1.7 函数随着程序开始变大,我们会想要有条理地组织这些程序。本节简要介绍函数、库模块以及带有异常的错误处理。自定义函数对你要重用的代码使用函数。下面是函数的定义方式: {代码...} 函数调用: {代码...} 函数是执行某些任务并返回结果的一系列语句。 return 关...
封面图

翻译:《实用的Python编程》01_06_Files

2021-02-18
阅读 4 分钟
1.6k
目录 | 上一节(1.5 列表) | 下一节 (1.7 函数)1.6 文件管理大多数的程序需要从某处读取输入。本节讨论文件访问。文件输入和输出打开一个文件: {代码...} 读取所有的数据: {代码...} 写入一些文本: {代码...} 当你完成操作后,关闭文件: {代码...} 文件应该被正确地关闭,这是很容易忘记的一个步骤。因此,首选方法是...
封面图

翻译:《实用的Python编程》01_05_Lists

2021-02-17
阅读 5 分钟
1.2k
目录 | 上一节 (1.4 字符串) | 下一节 (1.6 文件)1.5 列表本节介绍 Python 原始数据类型列表(list)。 列表是一种有序的集合。创建列表使用方括号 [] 来定义列表字面量。 {代码...} 有时候,列表也可以通过其它方法创建。例如:使用字符串的 split() 方法可以将一个字符串拆分为一个列表: {代码...} 列表操作列表可以...
封面图

翻译:《实用的Python编程》01_04_Strings

2021-02-16
阅读 7 分钟
1.7k
目录 | 上一节 (1.3 数字) | 下一节 (1.5 列表)1.4 字符串本节介绍处理文本的方法。表示字面量文本在程序中字符串字面量使用引号来书写。 {代码...} 通常,字符串只能占一行。三引号捕获在引号结束之前的所有文本,包含所有的格式。使用单引号(')和双引号(“)没有区别。但是,以什么样的引号开始字符串,必须以什么样...
封面图

翻译:《实用的Python编程》01_03_Numbers

2021-02-15
阅读 3 分钟
1.2k
目录 | 上一节 (1.2 第一个程序) | 下一节 (1.4 字符串)1.3 数字本节讨论数学计算。数字类型Python 有 4 种类型的数字:布尔型整型浮点型复数(虚数)布尔型(bool)布尔型数字有两个值:True,False。 {代码...} 在数值上,它们被计算成值为 1,0 的数。 {代码...} 但是,不要像上面这样写代码,这会很奇怪。整型(int...
封面图

翻译:《实用的Python编程》01_02_Hello_world

2021-02-13
阅读 6 分钟
1.2k
目录| 上一节 (1.1 Python) | 下一节 (1.3 数字)1.2 第一个程序本节讨论有关如何创建一个程序、运行解释器和调试的基础知识。运行 PythonPython 程序始终在解释器中运行。解释器是一个“基于控制台”的应用程序,通常从命令行 shell 启动。 {代码...} 老练的程序员以这种方式使用解释器时通常都没有问题,但对于初学者来说...
封面图

翻译:《实用的Python编程》01_01_Python

2021-02-06
阅读 4 分钟
1.6k
Python 是一种解释型(译者注:区别于编译型)的高级语言, 通常被归类为 "脚本语言" 并被认为类似于Perl、Tcl 或 Ruby 等语言。Python 的语法大致受 C 编程语言的启发。Python 由吉多·范罗苏姆(Guido van Rossum)于 1990 年创建,用 Python 命名是为了纪念吉多·范罗苏姆所喜欢的马戏团 Monty Python。
封面图

翻译:《实用的Python编程》01_00_Overview

2021-02-02
阅读 1 分钟
1k
本章是第一章,将会从头开始介绍 Python 基础知识,让你从零开始,学会怎么编写、运行、调试一个简单的程序。最后,你可以运用这些 Python 基础知识,去编写一个简短的脚本,读取 csv 数据并执行一些简单的计算。
封面图

翻译:《实用的Python编程》00_Setup

2021-02-01
阅读 2 分钟
1.2k
该课程最初是作为一个由讲师主导的,持续 3 -4 天的现场培训。要全部完成本课程,您应该最少计划用25-35小时进行学习。大部分的参与者发现,在不浏览题解代码的情况下,学习材料是相当具有挑战性的(见下文)
封面图