分类 Python教程 下的文章

面向对象编程面向对象编程:Object Oriented Programming,简称OOP,是一种程序设计方法。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的方法。Python就是一种面向对象的语言,支持面向对象编程,在其内部,一切都被视作对象。面向对象编程出现以前,结构化程序设计是程序设计的主流,结构化程序设计又称为面向过程编程。在面向过程编程中,问题被看作一系列需要完成的任务,函数(在此泛指例程、函数、过程)用于完成这些任务,解决问题的焦点集中于函数。其中函数是面向过程的,即它关注如何根据规定的条件完成指定的任务。

- 阅读剩余部分 -

文件读写到目前为止,我们做的一切操作,都是在内存里进行的。如果一旦断电或发生意外,那么你的工作成果将瞬间消失。你有没有一种人生缺少了点什么的感觉?是的,我们还缺少将数据在本地文件系统进行持久化的能力,白话讲就是文件的读写能力。很久以前,我刚开始学习编程的时候,很长一段时间都觉得写的代码毫无用处,直到我学会了对本地文件进行读写之后,才感觉自己真的能写点有用的东西了。Python内置了一个open()方法,用于对文件进行读写操作。使用open()方法操作文件就像把大象塞进冰箱一样,可以分三步走,一是打开文件,二是操作文件,三是关闭文件。

- 阅读剩余部分 -

内置函数你会不会有些好奇Python为什么可以直接使用一些内建函数,而不用显式的导入它们?比如 str()、int()、dir()、id()、type(),max(),min(),len()等,许多许多非常好用,快捷方便的函数。因为这些函数都是一个叫做builtins模块中定义的函数,而builtins模块默认在Python环境启动的时候就自动导入,所以你可以直接使用这些函数。

- 阅读剩余部分 -

装饰器作为许多语言都存在的高级语法之一,装饰器是你必须掌握的知识点。装饰器(Decorator):从字面上理解,就是装饰对象的器件。可以在不修改原有代码的情况下,为被装饰的对象增加新的功能或者附加限制条件或者帮助输出。装饰器有很多种,有函数的装饰器,也有类的装饰器。装饰器在很多语言中的名字也不尽相同,它体现的是设计模式中的装饰模式,强调的是开放封闭原则。装饰器的语法是将@装饰器名,放在被装饰对象上面。

- 阅读剩余部分 -

生成器前面我们已经好几次提到了生成器的概念。这里对其简要介绍一下。有时候,序列或集合内的元素的个数非常巨大,如果全制造出来并放入内存,对计算机的压力是非常大的。比如,假设需要获取一个10**20次方如此巨大的数据序列,把每一个数都生成出来,并放在一个内存的列表内,这是粗暴的方式,有如此大的内存么?如果元素可以按照某种算法推算出来,需要就计算到哪个,就可以在循环的过程中不断推算出后续的元素,而不必创建完整的元素集合,从而节省大量的空间。在Python中,这种一边循环一边计算出元素的机制,称为生成器:generator。

- 阅读剩余部分 -

迭代器在介绍迭代器之前,先说明下迭代的概念:迭代:通过for循环遍历对象的每一个元素的过程。Python的for语法功能非常强大,可以遍历任何可迭代的对象。在Python中,list/tuple/string/dict/set/bytes都是可以迭代的数据类型。可以通过collections模块的Iterable类型来判断一个对象是否可迭代:

- 阅读剩余部分 -

推导式Python语言有一种独特的推导式语法,相当于语法糖的存在,可以帮你在某些场合写出比较精简酷炫的代码。但没有它,也不会有太多的影响。Python语言有几种不同类型的推导式,下面逐一介绍:1. 列表推导式列表推导式是一种快速生成列表的方式。其形式是用方括号括起来的一段语句,如下例子所示:

- 阅读剩余部分 -

匿名函数在函数创建过程中,有时我们并不需要显式地定义函数,而是可以直接传入匿名函数来实现相应的功能。这样做不仅省去了为函数命名的麻烦,还能减少代码量。许多编程语言都支持匿名函数的特性。正确地使用匿名函数可以起到画龙点睛的效果,但如果使用不当,可能会适得其反。因此,在日常的编码过程中,我们需要多学习、多观察、多思考。

- 阅读剩余部分 -

递归函数在前面的章节中,我们已经多次见到了函数调用其他函数的情况。而如果一个函数在内部调用了自身,那么这个函数就被称为递归函数。是的,函数可以直接或间接地调用自己,这就形成了递归调用。你可能会问,这样不会导致无限循环,永远无法退出吗?实际上,递归函数必须具备终止条件,才能保证递归的结束。让我们看一个经典的例子,高斯求和问题:1+2+3+4+…+99+100。如果不使用递归,我们可以通过循环来实现:

- 阅读剩余部分 -

range()函数在C语言中,如果想要循环一个变量从1到100,要怎么写呢?for(i = 1,i<=100,i++)你在C的代码中,几乎随处可见上面的for循环。Python非常贴心,为我们设计了range函数,直接实现上面的功能。range函数是内置函数,无须特别导入,在任何地方都可以直接使用它。下面看一下具体用法:

- 阅读剩余部分 -