国外课栈 - 国外电子信息技术视频教程、电子书和博文栈
Python生存技巧
Python生存技巧
类别 : 视频教程
格式 : MP4
订阅须知  订阅
概述

Python生存技巧

Python生存技能LiveLessons可帮助您掌握中级到高级的功能,这可能需要人们花费数月甚至数年的时间才能学习。在此视频课程中,Brian Overland教给您成为专业的Python程序员所需的工具。

涵盖内容:

  • 使用列表推导
  • 使用集合推导
  • 精确格式化文本
  • 实施多维列表
  • 利用装饰器
  • 编写发生器
  • 有效地将数据存储在文件中
  • 了解Python类和对象

第1课:列表推导

另一个名称可能是“列表压缩”。它使您可以用更少的代码来做更多的事情。在本课程中,通过经典的编程挑战(编写回文应用程序)来举例说明此功能。Brian向您展示了如何使用列表理解将通常编写的代码减少75%。

主题1.1和1.2介绍了列表推导,并向您展示了它的工作原理。主题1.3引入了一个可选的但强大的功能:条件包含。最后,主题1.4汇总了整个示例,展示了如何使用列表理解功能,该示例比明显的处理方式要短得多。

第2课:集合和集合推导

第2课介绍集合。是的,这是您可能已经熟悉的数学概念。这个概念具有巨大的实用价值,以至于它是Python的内置功能,就像列表,字符串或数字的概念一样合法。集合的真正酷点在于,集合上的Python操作与数学概念完全匹配。这包括并集,相交,子集等。

但是集合的实际用途是什么?在本课中,您将看到集合的有用性,从介绍该概念的主题2.1开始,再介绍设置操作的主题2.2。主题2.3介绍了著名的“筛子”应用程序。最后,主题2.4显示了如何使用Python集来创建此经典编程基准的令人难以置信的高效版本。

第3课:精确格式化文本

乍一看,格式化文本似乎并不令人兴奋,但这对专业程序员至关重要。您可以自己做所有事情,但是要在没有Python帮助的情况下打印出这些漂亮的列,您将需要做很多额外的工作。Python采用了绝非一种而是三种格式化技术来进行救援。您必须一次掌握所有三个吗?不会。但是,如果您有一天想使用更高级的方法,了解它们会很有用。因此,我们首先研究主题3.1和3.2中最简单的方法,即百分比运算符。该运算符是从旧的C语言借来的,因此您可能已经知道如何使用它。然后,在主题3.3和3.4中,我们讨论了格式函数和格式方法。鉴于名称的相似性,它们应该相互关联,事实证明它们是相关的。但是它们有一个相似的目的:无需大量工作即可帮助您打印美观的输出。

第4课:多维列表

没有某种处理多维数组的方法的编程语言不是是真正完整。多维列表也称为矩阵。矩阵在游戏编程,模拟,线性代数和许多其他领域中具有重要用途。但这是Python向您扔出一些“曲线”的领域。令人惊讶的是,在C,C ++或Java中,此简单任务(创建矩阵)在某些方面要比Python容易。如果需要,您始终可以使用Numpy软件包创建矩阵,我们将在以后的课程中处理该矩阵。但是在本课程中,我将向您展示如何使用核心Python语言创建二维列表。问题在于无法声明Python矩阵。他们必须被建造。主题4.1显示了Python 2D列表的一些简单用法。主题4.2显示了为什么在Python中创建任意大的矩阵并不那么容易。但是最后两个主题4.3和4.4可以帮助您展示如何解决问题,甚至创建更高维度的列表(如果需要)。

第5课:字典

接下来是似乎真正神奇的Python领域:数据字典。像列表和集合类型一样,字典是Python中的基本数据类型。在本课程中,您将看到词典可以做什么。您可以通过提供“键”(通常是包含有意义名称的字符串)来使用字典来查找数据,该键通常比使用索引号方便得多。刚开始时听起来可能并不多,但它打开了无限的可能性。数据字典就像基本的数据库系统。它的基本操作很简单,但是您可以使用它来做很多事情。前两个主题5.1和5.2向您展示了一些实际用途。主题5.3仍然更加实用,向您展示如何使用字典对单词进行计数并提供频率计数。主题5.4做同样的事情,但是它从文件中获取输入。在讨论过程中,我们将回顾读取和写入文本文件的原理。创建频率计数的功能是诸如霍夫曼编码之类的计算机算法的重要组成部分。精通这些任务,您就可以成为Python的“真正的程序员”。

第6课:生成器

本课和下一课将介绍Python的一些非常特殊的功能,而其他大多数语言都不会提供。它们对于Python是唯一的,或者几乎是唯一的。其中之一就是“生成器”技术。整个Python中最基本的概念也许是“迭代器”(或更确切地说是“可迭代”)的概念,这是同一印币的另一面。迭代器是每次可以逐步执行的任何序列。列表是可迭代的,但是您可以通过编写生成器函数来创建自己的可迭代。这是一项非常酷的技术,可为您提供极大的灵活性。首先,我们来看写主题6.1中的生成器而不是列表的基本原理。主题6.2解释了生成器如何工作以及使它们与众不同的原因。然后,在主题6.3和6.4中,我们介绍了生成器的一些高度实用的用法,以及为什么要将它们放入程序中。

第7课:装饰器

很少有Python主题因比装饰器主题更难而闻名。这个主题并不那么困难。问题是,通常它的教学效果不佳。如果您已听说过该主题或难以学习,那就放轻松吧!因为您终于来对地方了。Python的“装饰”只是一种向功能添加额外代码,然后使过程自动化的方法。在主题7.1中,Brian讨论了为什么这是一个如此有用的工具,尤其是当您要分析或安排功能时。主题7.2给出了一个简单装饰器的示例。最后两个主题7.3和7.4通过显示理解装饰器所需的完整语法来完成该过程。同样,这不是一个不可能理解的主题,甚至不是那么困难。本课将为您提供所需的理解。

第8课:类和对象,第一部分

本课程的最后主题是类和对象。这些概念是如此相互关联,以至于实际上必须将它们放在一起。但是,这一主题-面向对象的编程-是如此之大,以至于需要两堂完整的课程来为您很好地介绍该主题。在使用诸如C ++,C#和Java之类的语言时,您很可能曾经遇到过这个主题。但这不仅仅是使用“点”语法。这是关于创建活动的数据类型,可以调用它们来执行服务。再说一次,Python(尽管对于初学者来说通常更容易使用)会给您带来一些麻烦。正如您将在主题8.1和8.2中看到的那样,创建带有简单初始化的类需要一些额外的工作。另一方面,Python类非常方便,因为它们支持许多自动为您执行重要服务的“魔术方法”。在主题8.3中,您将看到__str__方法如何执行对象的自动打印。最后,在主题8.4中,您将看到如何使对象执行所需的任何类型的服务。从长远来看,您会发现Python类易于编码,有时还可以节省大量时间。

第9课:类和对象II,数据记录

类和对象的原型模型是数据记录的模型,但是类当然更多。将类或对象视为“数据记录加”。它“不仅仅是数据记录!”本课从显示典型数据记录开始-该数据记录存储了公司员工的信息。主题9.1展示了如何创建此类型,主题9.2展示了如何以所需的任何格式自动打印员工记录对象。但是,如果您不容易输入数据,那么存储数据有什么好处呢?主题9.3说明了一个数据输入例程,该例程使使用新的Employee类变得轻而易举。最后,我们通过主题9.4结束本课程,展示了将一系列记录存储在二进制文件中的最佳方法-然后将它们读出。本节介绍了超级方便的Python“ pickle”软件包,这是迄今为止使用二进制数据的最简单方法。

目录(6时)

第1课:列表推导

1.1复制列表

1.2使用列表推导

1.3条件包含

1.4列表推导和回文

第2课:集合和集合推导

2.1集合介绍

2.2集合操作

2.3筛子应用

2.4集合推导与筛子

第3课:精确文本格式化

3.1简单设置格式的问题

3.2用%打印漂亮的表格

3.3格式化功能

3.4格式化方法

第4课:多维列表

4.1创建和使用2D列表

4.2 M x N问题

4.3解决矩阵问题

4.4打印乘法选项卡

第5课:字典

5.1引入词典

5.2示例:幻数

5.3计算字符串中的单词

5.4对文件中的单词进行计数

第6课:生成器

6.1问题:不是斐波那契吗?

6.2生成器的工作方式

6.3生成器的使用

6.4生成器使用的其他示例

第7课:装饰器

7.1装饰目标:分析

7.2简单的装饰器

7.3增强修饰:参数

7.4 Decorator @语法

第8课:类和对象,第I部分

8.1定义类:Point类

8.2添加初始化(__init__)

8.3字符串表示(__str__)

8.4其他方法

第9课:类和对象II,数据记录

9.1具有__init__的员工类

9.2员工类字符串表示形式

9.3数据输入例程

9.4读写二进制文档

Python

会员登录
登录
我的资料
留言
回到顶部