Skip to content

Latest commit

 

History

History
167 lines (90 loc) · 3.31 KB

File metadata and controls

167 lines (90 loc) · 3.31 KB

第10节 Python类和对象

❤️💕💕python是一种动态的解释形语言,由于python的普遍性,学会python能更快的解决问题,以及学习其他的知识。Myblog:http://nsddd.top


[TOC]

面对对象

Python 是一种面向对象的编程语言。

Python 中几乎所有的东西都是一个对象,有它的属性和方法。

一个类就像一个对象构造器,或者一个用于创建对象的“蓝图”。

要创建一个类,请使用关键字class

In [58]: class MyClass:
    ...:     x = 10
    ...:

In [59]: MyClass
Out[59]: __main__.MyClass

In [60]: MyClass.x
Out[60]: 10

提议:建议对类名以大写为公有,小写为私有。

init() 函数

上面的示例是最简单形式的类和对象,在现实生活中的应用程序中并没有真正的用处。

要理解类的含义,我们必须了解内置的 init() 函数。

所有类都有一个名为 init() 的函数,该函数总是在类启动时执行。

使用 init() 函数将值分配给对象属性或创建对象时必须执行的其他操作:

In [2]: class A:
   ...:     def __init__(self,age):
   ...:         self.age = 10
   ...:

In [7]: a = A(10)

In [8]: a.age
Out[8]: 10

参数self是对当前类实例的引用,用于访问属于该类的变量。

self参数

参数是对当前类实例的self引用,用于访问属于该类的变量。

它不必命名self,你可以随意调用它,但它必须是类中任何函数的第一个参数:

使用mysillyobjectabc代替self

  • 如果你需要参数的话,你知道怎么做了把,一定要把第一个流出来,记住,那不是参数
In [12]: class Person:
    ...:   def __init__(mysillyobject, name, age):
    ...:     mysillyobject.name = name
    ...:     mysillyobject.age = age
    ...:
    ...:   def myfunc(abc):
    ...:     print("Hello my name is " + abc.name)
    ...:

NameError: name 'person' is not defined

In [14]: person = Person("张三",20)

In [15]: person.name
Out[15]: '张三'

In [16]: person.age
Out[16]: 20

In [18]: person.myfunc()
Hello my name is 张三

对象的一系列操作

修改对象属性

In [23]: person.name = "李四"

In [24]: person.myfunc()
Hello my name is 李四

删除对象属性

del person.name

删除对象

del person

通行证声明

不仅仅函数是可以为空,甚至class也可以为空,如果你没有放入任何东西,请务必放入class Person: pass

In [29]: class Person:
    ...:   pass
    ...:

In [30]: Person
Out[30]: __main__.Person

END 链接