1.迭代器
迭代是Python最强大的功能之一,是访问集合元素的一种方式。
- 可迭代对象:序列、字典、迭代器以及生成器
- 迭代器的特性:
- 取一次后就不能使用了;迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退
- 会记住上一次停留的位置,迭代器是一个可以记住遍历的位置的对象 - 实现语法:两种实现方法,iter() 和 next()
list = [1,2,3,4]
it = iter(list)
print(type(it))
2.面向对象
-
面向过程
-
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了;面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为
-
面向对象编程可以使程序的维护和扩展变得更简单,并且可以大大提高程序开发效率 ,另外,基于面向对象的程序可以使它人更加容易理解你的代码逻辑,从而使团队开发变得更从容
另外学习面向对象需要了解一些名词:类、对象、实例、实例化
类:具有相同特征的一类事物
对象/实例:具体的某一个事物
实例化:类–>对象的过程
3.类
类是用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。
- 类的创建,使用 class 语句来创建一个新类,class 之后为类的名称并以冒号结尾:
- `class MyClass(): pass
- 类的帮助信息可以通过ClassName.__doc__查看
- 大驼峰的命名规则
- 实例的创建
mc = MyClass()
4.属性和方法
class由类成员,方法,数据属性组成。
- 属性
- 方法
- 对于定义在类中的属性和方法,所有的实例对象都可以被调用
5.self参数
self 代表类的实例,self 在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。
- 类的方法与普通的函数只有一个特别的区别——它们必须有一个额外的第一个参数名称, 按照惯例它的名称是 self
class Test:
def prt(self):
print(self)
print(self.__class__)
t = Test()
t.prt()
self 代表的是类的实例,代表当前对象的地址,而 self.class 则指向类。