python 对象和类

对象:

在python中所有数据都是以对象的形式存在,即‘一切事物皆对象’,对象既包含了数据,也包含了代码。

类:

在Python中有很多用来创建其他标准数据类型的类,例如列表、字典等。如果想在Python中创建属于自己的对象。必须用关键字class来定义一个类。例如

class person():
    def __init__(self,name):    self.name = name    print(‘%s ‘ % self.name)
n1 = person(‘sunlieqi‘)

上面的代码做了以下的工作:

  • 查看 person类的定义
  • 在内存中创建了一个新的对象;
  • 调用兑现的__init__方法,将这个新创建的对象作为self传入,并将另一个参数(‘sunlieqi’)当作name传入
  • 返回这个新的对象
  • 刚传入的对象写在了内存中,可以直接进行读写打印

类有三个特性

(1)封装

class Foo:

    def __init__(self, name, age):
        self.name = name
        self.age = age

obj1 = Foo(‘sunlieqi‘, 18)
print obj1.name
print obj1.age     

obj2 = Foo(‘slq‘, 73)
print obj2.name
print obj2.age

  

self 是一个形式参数,当执行 obj1 = Foo(‘sunlieqi‘, 18 ) 时,self 等于 obj1

当执行 obj2 = Foo(‘slq‘, 78 ) 时,self 等于 obj2

对于面向对象的封装来说,其实就是使用构造方法将内容封装到 对象 中,然后通过对象直接或者self间接获取被封装的内容。

(2)继承

从已经有存在的类中衍生出新的类,添加或者修改部分功能

class cat:
    def 吃():
        pass
    def 喝():
        pass
    def 拉():
        pass
    def 撒():
        pass
    def 叫():
        print(‘miao’)

class dog:
    def 吃():
        pass
    def 喝():
        pass
    def 拉():
        pass
    def 撒():
        pass
    def 叫():
        print(‘wang‘)

 在上面知道 猫狗除了叫不一样 都执行的一样的方法 即 吃喝拉撒

我们可以用一个大的类来包括这些

class  animal:
  def 吃():
        pass
    def 喝():
        pass
    def 拉():
        pass
    def 撒():
        passclass cat(animal):  def 叫():    print(’miao‘)class dog(animal):  def 叫():    print(’wang‘)

  所以,对于面向对象的继承来说,其实就是将多个类共有的方法提取到父类中,子类仅需继承父类而不必一一实现每个方法。

(3)多态

Python 用不着多态。略

时间: 2024-10-06 20:48:09

python 对象和类的相关文章

Python对象和类

Python 里的所有数据都是以对象形式存在的,对象是类的实例. 定义类(class) 使用class来定义一个类. 比如,定义一个cat类,如下: class Cat(): def __init__(self): self.name = name 创建两个cat类的实例cat1,cat2,如下: cat1 = Cat('mimi') cat2 = Cat('momo') 类中的__init__为初始化函数,在实例创建的时候执行.它的第一个参数必须是self. 继承 一个类可以继承另一个类,被继

对于python,一切事物都是对象,对象基于类创建

新建列表.新建string字符串 1 li1 = [1, 2, 3, 4] 2 li2 = list([1, 2, 3]) 3 4 s1 = "abc" 5 s2 = str("abc") 6 7 print(li1) 8 print(type(li1)) 9 10 print(li2) 11 12 print(s1, s2) 13 14 #显示结果: 15 #[1, 2, 3, 4] 16 #<class 'list'> 17 #[1, 2, 3] 1

Python全栈--9.1--面向对象进阶-super 类对象成员--类属性- 私有属性 查找源码类对象步骤 类特殊成员 isinstance issubclass 异常处理

上一篇文章介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以讲多函数中公用的变量封装到对象中) 对象,根据模板创建的实例(即:对象),实例用于调用被包装在类中的函数 面向对象三大特性:封装.继承和多态 本篇将详细介绍Python 类的成员.成员修饰符.类的特殊成员. 注意点: self ,我们讲过了,self = 对象,实例化后的对象调用类的各种成员的时候的self就是这个对象. 而且我们也讲过了

python里的类与一切事物都是对象

对于python,一切事物都是对象,对象基于类创建 列如 name='csdcs' li=[1,3,43] 上面两个都是对象,因为它们都是python中的 类里面存着许多的功能,功能的集合,     对象里存着具体输入的值,与类的内存地址 当对象要进行操作实现不同的功能时,它就会根据保存的内存地址去寻找类引用里面的功能 这样,避免了,功能相同的对象里面,每个对象都去保存相同的功能,它们功能相同都直接去引用类里的功能就行了,类里面就保存了它们的功能 所以对象都是基于类创建的 列如: ll=[11,

python的类和对象(类的静态字段)

转自:http://www.cnblogs.com/Eva-J/p/5044411.html 什么是静态字段 在开始之前,先上图,解释一下什么是类的静态字段(我有的时候会叫它类的静态变量,总之说的都是它.后面大多数情况可能会简称为类变量.): 我们看上面的例子,这里的money就是静态字段,首先看它的位置,是在father类中,而不是在__init__中.那么一个小小的静态字段,我为什么要特意写一篇番外给它呢?耐着性子看下去,你就会发现一个小小的类变量,却折射出了整个类的世界. 首先我们先来解释

简述Python中的类与对象

Python中的类 类的定义 示例: class Person: country = "China" def __init__(self, name, age): self.name = name self.age = age def speak(self, word): print(word) 其中 country 是类属性,即 Person类 的静态属性,speak() 为 Person类的函数属性,即类的动态属性~ 类的实例化 对上述示例的类进行实例化: >>>

python中类对象、实例对象、类属性、实例属性、类方法、实例方法、静态方法

类对象.类属性与实例对象.实例属性的区别 在Python中一切皆是对象,类是一个特殊的对象即类对象,描述类的属性称为类属性.类属性在内存中只有一份,在__init__外部定义. 通过类创建的对象称为实例对象,描述实例对象的属性称为实例属性.实例属性在各自对象的内存中都保存一份,在__init__方法内部定义. 实例方法.类方法.静态方法的区别 这三种方法都是保存在类的内存中,调用者不同. 实例方法由对象调用,至少一个self参数,self代表对象的引用. 类方法有类调用,至少一个cls参数,并且

python中的类和对象

类和对象 1. 类和对象和概念 类:共性事物的抽象,是对某一类具有共同事物的描述,是具有相同属性和方法的集合 对象:类的实例,是共性事物的一个体现,是这类事物中的每个个体 2. 总结: 类是对象的模板,对象是类的实例 3. 创建类的语法 class Math: #类名一般首字母大写 a = 4 #属性 b = 5 def add(self): c = self.a + self.b return c 注意: 类名一般首字母大写,比如class User ,其中class是关键字 类里面包含属性(

Python 之面向对象:类和对象调用类中的变量和方法

面向对象的核心是对象,用对象来操控类里面的方法和变量,加上类还具有继承.封装.多态三大特性,提高了代码的复用性和规范性. 一.对象 调用类中的变量和方法 二 .类  调用类中的变量和方法 原文地址:https://www.cnblogs.com/tianpin/p/11283032.html