一、初识python面向对象:

class Person: #使用class关键字定义一个类
  age=0 #类变量(静态变量)
  def eat(self,food): #定义一个方法
    self.age=5 #self是实例本身,self.age是实例变量
    print("I will eat %s" %food)

xiaofan=Person() #实例化,生成对象xiaofan
print(xiaofan.age) #调用对象方法,因为还没有调用eat方法,则使用类方法的值
xiaofan.eat("apple") #调用对象方法
print(xiaofan.age) #调用对象,此时调用了eat,则age的值改变了
print(Person.age) #调用类的方法

"""

0
I will eat apple
5
0

"""

#在python 的面向对象当中,类和实例以及实例和实例之间都是拥有独立的内存空间的.

#class 是我们定义类的关键字
#Person 是我们定义类的名称
#() 继承,如果没有继承对象,我们可以吧括号省略掉

#类是对事物的划分,我们使用的是类的实例
#所以我们调用类又叫做类的实例化
#在实例化的过程当中,括号的作用是传参
#类名加上括号就是实例化

二、

构造函数:(初始化函数 __init__)

class Person:
  def __init__(self,food):      #实例化时就被执行了
    self.age=0

    print("hello !!!")      

    print("I will eat %s" %food)          
  def eat(self,food):
    self.age=3
    print("I will eat %s" %food)

xiaofan=Person(milk)
print(xiaofan.age)
xiaofan.eat("rice")
print(xiaofan.age)

"""

hello !!!
I will eat milk
0
I will eat rice
3

#1、构造函数是指类实例化之后自动执行的
#2、构造函数传参需要在实例化的过程中在类的括号当中传
#3、构造函数必须没有返回值

"""

析构函数:实例被删除时执行

class Person:
  def __init__(self):
    print("hello world")
  def __del__(self):
    print("goodbye world")

xiaofan = Person()
del xiaofan

"""

hello world
goodbye world

"""

三、

#如果实例变量有定义,那么实例变量采用自己的值
#如果实例变量没有定义,那么采用类变量的值
#如果类变量也没有定义,那么报错
#但是实例变量无法对其他实例的实例变量产生影响
#也不能对类变量产生影响

初识python面向对象的更多相关文章

  1. 初识python 面向对象

    what the f**k!!这个知识点学不好的最大元凶就是,我还单身??? python基础(四): 面向对象的三个特点: 封装,继承,多态 类: 对象是面向对象编程的核心,在使用对象的过程中,为了 ...

  2. 初识python面向对象编程

    初识python面向对象编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.面向过程的程序设计思想 #!/usr/bin/env python #_*_coding:utf-8 ...

  3. Python面向对象01 /面向对象初识、面向对象结构、类、self、实例化对象

    Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 目录 Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 1. 面向对象初识 2. 面向 ...

  4. python 面向对象专题(一):面向对象初识、面向对象结构、类、self、实例化对象

    https://www.cnblogs.com/liubing8/p/11301344.html 目录 Python面向对象01 /面向对象初识.面向对象结构.类.self.实例化对象 1. 面向对象 ...

  5. Python导出Excel为Lua/Json/Xml实例教程(一):初识Python

    Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...

  6. @1-2初识Python爬虫

    初识Python爬虫 Python爬虫(入门+进阶)     DC学院 环境搭建: Python2与Python3的差异:python2与python3整体差异不大,大多是一些语法上的区别,考虑到py ...

  7. 孤荷凌寒自学python第二十一天初识python的类

    孤荷凌寒自学python第二十一天初识python的类 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 类是面向对象的编程语言非常重要的概念. 编程语言的进化史中从顺序编程到结构化编程,最后才 ...

  8. Python面向对象03 /继承

    Python面向对象03 /继承 目录 Python面向对象03 /继承 1. 初识继承 2. 单继承 3. 多继承 4. 总结 1. 初识继承 概念:专业角度:如果B类继承A类,B类就称为子类,派生 ...

  9. python 面向对象专题(三):继承

    目录 Python面向对象03 /继承 1. 初识继承 2. 单继承 3. 多继承 4. 总结 1. 初识继承 概念:专业角度:如果B类继承A类,B类就称为子类,派生类,A类就称为父类,超类,基类 种 ...

随机推荐

  1. TCP/IP WebSocket MQTT

    http://www.cnblogs.com/shanyou/p/4085802.html TCP/IP, WebSocket 和 MQTT

  2. su成别的用户后仍以原来私钥访问远程机器

    背景: 同步机和游戏服两台机都有个人用户账号和游戏账号xy1,游戏服设了xy1的ssh强制命令来受同步机的xy1控制.现在需要在同步机上用xy1进行一个控制游戏服的操作,该操作需要在同步机远程tail ...

  3. Android PullToRefreshListView上拉刷新和下拉刷新

    PullToRefreshListView实现上拉和下拉刷新有两个步骤: 1.设置刷新方式 pullToRefreshView.setMode(PullToRefreshBase.Mode.BOTH) ...

  4. 【转】如何修改Chrome缓存目录的地址

    本文转自:http://www.nowamagic.net/librarys/veda/detail/2573 C盘空间越来越小,在Win7里还标红了,心里看得不舒服,得想一些方法腾出一些空间.看了A ...

  5. Android dp px转化公式

    // DisplayMetrics metrics = getResources().getDisplayMetrics(); // int statusBarHeight = (int) Math. ...

  6. iOS UIBezierPath知识介绍

    UIBezierPath是在画图,定制动画轨迹中都有应用. UIBezierPath有许多类方法,能够创建基本的曲线,比如利用一个rect创建一个椭圆path的方法:bezierPathWithOva ...

  7. Android实现支持缩放平移图片

    本文主要用到了以下知识点 Matrix GestureDetector 能够捕捉到长按.双击 ScaleGestureDetector 用于检测缩放的手势 自由的缩放 需求:当图片加载时,将图片在屏幕 ...

  8. sqlserver临时启用和关闭约束

    select  'ALTER TABLE ['  + b.name +  '] NOCHECK CONSTRAINT ' +  a.name +';' as  禁用约束   from  sysobje ...

  9. Python中通过cx_oracle操作ORACLE数据库的封闭函数

    哈哈,看来我的SQL自动化发布,马上就全面支持ORACLE,MYSQL,POSTGRESQL,MSSQL啦... http://blog.csdn.net/swiftshow/article/deta ...

  10. freopen()——重定向标准输入输出流

    freopen()——重定向标准输入输出流 头文件:stdio.h 函数原型:FILE * freopen(const char *filename , const char *type ,  FIL ...