在python中,一个对象的特征也称为属性(attribute)。它所具有的行为也称为方法(method)

结论:对象=属性+方法

在python中,把具有相同属性和方法的对象归为一个类(class)

比如人类,动物,植物等等,这些都是类的概念。

类是对象的模板或蓝图,类是对象的抽象化,对象是类的实例化。类不代表具体的事物,而对象表示具体的事物。

>>> class people:

... def speak(self):

... print ("hello!")

...

''' 定义一个people类,定义一个speak方法,但没有定义属性, 因为属性不属于类,而是属于各个类的实例。也就是说属于对象。 因此我们可以给每个实例设置不同的属性 '''

>>> class people: #类

... def speak(self): #方法

... print ("hello!")

...

>>>

>>> jack = people() #创建jack实例

>>> tom = people() #创建tom实例

>>> import tab #导入table键功能模块

>>> jack. #输入jack.,可以看到以下方法

jack.__class__ jack.__doc__ jack.__module__ jack.speak()

>>> jack.speak() #引用speak方法 hello!

>>> jack.age=39 #添加age属性

>>> jack.height=120 #添加height属性

>>> jack. jack.__class__ jack.__module__ jack.height jack.__doc__ jack.age jack.speak()

>>> jack.height 120

>>> jack.age 39

'''

#初始化对象 创建类时,可以定义一个特定的方法,名为__init__(),只要创建这个类的一个实例 就会运行这个方法。

可以向__init__()方法传递参数, 这样创建对象时就可以把属性设置为你希望的值 __init__()这个方法会在创建对象时完成初始化,

'''

>>> class peo:

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

... self.Name = name

... self.Age = age

... self.Sex = sex

... def speak(self):

... print "my name" + self.Name

...

>>> 实例化这个类的对象时:

>>> zhangsan=peo("zhangsan",24,'man')

>>> print zhangsan.Age 24

>>> print zhangsan.Name zhangsan

>>> print zhangsan.Sex man # ----------

>>> print zhangsan < __main__.peo instance at 0x7fe5041ec248>

'''

要让print能打印出来,就得使用__str__方法 __str__()这个方法告诉python在打印(print)一个对象时,具体显示什么内容

'''

#! /usr/bin/python class peo:

def __init__(self,name,age,sex):

self.Name = name

self.Age = age

self.Sex = sex

def speak(self):

print "my name" + self.Name

def __str__(self):

msg='my name is: ' +self.Name+ ","+ "my age is: " + self.Age +','+ "my sex is:" +self.Sex

return msg

shanghai=peo('shanghai','23','man')

''' msg='my name is: ' +self.Name+ ","+ "my age is: " + self.Age +','+ "my sex is:" +self.Sex

此处23是年龄,但被转成了字符串,因为self.Age定义的是字符串 如果不将23转义,则会报错 如果希望在程序中就事先转义,需要使用str(self.Age) '''

print shanghai

''' 之前多次用到self这个形参

类就好比是一张蓝图,使用一个类可以创建多个对象实例, speak()方法在被调用时,必须知道是哪个对象调用了它.

这里self参数就会告诉方法是哪个对象来调用的.这称为实例引用。 zhangsan.speak()就好比写成了peo.speak(zhangsan) '''

__author__ = Kayson

全面了解python中的类&comma;对象&comma;方法&comma;属性

全面了解python中的类,对象,方法,属性 python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象...... 我们通过描述属性( ...

Python 类的私有属性与私有方法

1.隐藏的使用场景 在Python类中,有些属性和方法只希望在对象的内部被使用,而不希望在外部被访问到, 2.定义方式, 在属性名或方法名前增加两个下划线,定义的就是私有属性或方法 #其实这仅仅这是一 ...

福利-&gt&semi;KVC&plus;Runtime获取类&sol;对象的属性&sol;成员变量&sol;方法&sol;协议并实现字典转模型

我们知道,KVC+Runtime可以做非常多的事情.有了这个,我们可以实现很多的效果. 这里来个福利,利用KVC+Runtime获取类/对象的所有成员变量.属性.方法及协议: 并利用它来实现字典转模型 ...

python类及其方法

python类及其方法 一.介绍 在 Python 中,面向对象编程主要有两个主题,就是类和类实例类与实例:类与实例相互关联着:类是对象的定义,而实例是"真正的实物",它存放了类中 ...

python—类对象和实例对象的区别

最近在对RF的通讯层的模块进行封装,需要将之前放在类似main里面的一个方法,如下所示:这段代码是开发提供,用于接口测试,模拟底层通讯,具体的通讯是在dll内,python这边只是做了个封装让RF进行 ...

Python类对象

python类对象 python类对象支持两种操作:属性引用和实例化. 属性引用 使用 Python 中所有属性引用所使用的标准语法: obj.name. 有效的属性名称是类对象被创建时存在于类命名空 ...

Django---CBV和FBV的使用&comma;CBV的流程&comma;给视图加装饰器&comma;Request对象方法&comma;属性和Response对象&comma;form表单的上传

Django---CBV和FBV的使用,CBV的流程,给视图加装饰器,Request请求对象方法,属性和Response响应对象,form表单的上传 一丶CBV和FBV       在Django中存 ...

Python之对象的属性

# -*- coding: utf-8 -*- #python 27 #xiaodeng #Python之对象的属性 #http://python.jobbole.com/82622/ #对象的属性 ...

python 学习笔记7(类&sol;对象的属性;特性,&lowbar;&lowbar;getattr&lowbar;&lowbar;)

27. 属性的__dict__系统 1)对象的属性可能来自: 其类的定义,叫做类属性 继承父类的定义 该对象实例定义(初始化对象时赋值),叫做对象属性 2)对象的属性存储在对象的 __dict__ 属 ...

随机推荐

Module Zero之用户管理

返回 用户实体 用户管理者 用户认证 用户实体 用户实体代表应用的一个用户,它派生自AbpUser类,如下所示: public class User : ...

web框架--flask

flask介绍 Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求 ...

&lbrack;再寄小读者之数学篇&rsqb;&lpar;2014-11-24 Abel 定理&rpar;

设幂级数 $\dps{g(x)=\sum_{n=0}^\infty a_nx^n}$ 在 $|x|<1$ 内收敛, 且 $\dps{\sum_{n=0}^\infty a_n=s}$ 收敛. 则 ...

特效TD 的工作准则

特效 TD 的工作准则 作者:Hammer Chen / 转载自 http://hammerbchen.blogspot.com/2013/07/vfx-td-td.html 一直以来都想写这样的文章 ...

多次读取请求request里数据

如果请求是GET方法,可以直接通过getParameter(String param)方法读取指定参数,可读取多次: 而POST方法的参数是存储在输入流中,只能读一次,不能多次读取. 有时需要在fil ...

JavaScript弹出框

confirm(str); 参数说明: str:在消息对话框中要显示的文本 返回值: Boolean值 返回值: 当用户点击"确定"按钮时,返回true 当用户点击"取消 ...

SQLSERVER PRINT语句的换行

原文:SQLSERVER PRINT语句的换行 SQLSERVER  PRINT语句的换行 想在输出的PRINT语句里面换行,可以这样做 /* SQL的换行 制表符 CHAR(9) 换行符 CHAR( ...

react-router简明学习

前面的话 路由用来分发请求.后端是提供服务的,所以它的路由是在找controller,前端是显示页面的,所以它的路由是在找component.本文将详细介绍react-router-dom的内容 Ro ...

python入门学习:2&period;列表简介

python入门学习:2.列表简介 关键点:列表 2.1 列表是什么2.2 修改.添加和删除元素2.3 组织列表 2.1 列表是什么   列表,是由一系列按特定顺序排列的元素组成.你可以创建包含字母表 ...

2&period; Python3输入与输出

数据的输入和输出操作是计算机最基本的操作,本节只研究基本的输入与输出,基本输入是指从键盘上输入数据的操作,基本输出是指屏幕上显示输出结果的操作. 2.1基本输入和输出 常用的输入与输出设备有很多,如摄 ...

python如何对一个属性或方法进行封装_python 类、对象、方法、属性相关推荐

  1. python定义一个dog类 类属性有名字毛色体重_全面了解python中的类,对象,方法,属性...

    python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象...... 我们通过描述属性(特征)和行为来描述一个对象的.比如家里的小狗, ...

  2. python 之属性_Python之对象的属性

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #Python之对象的属性 #http://python.jobbole.com/82622/ #对象的属性 ...

  3. python类属性初始化_Python类定义、属性、初始化和析构

    类的定义,属性和方法概念 方法中self的作用和意义 初始化( __init__ ) 和 析构方法( __del__ ) 类的定义 class 类名 实例 实例名 = 类名() 一个"实例& ...

  4. 【Groovy】编译时元编程 ( ASTTransformation#visit 方法中访问 Groovy 类、方法、字段、属性 | 完整代码示例及进行编译时处理的编译过程 )

    文章目录 一.ASTTransformation#visit 方法中访问 Groovy 类.方法.字段.属性 二.完整代码示例及进行编译时处理的编译过程 1.Groovy 脚本 Groovy.groo ...

  5. 创建一个长方形类,成员域有长方形的长和宽,成员方法有计算长方形的面积,在main方法中创建长方形类对象,并调用计算长方形面积的方法。

    package TestDemo; /** 创建一个长方形类,成员域有长方形的长和宽,成员方法有计算长方形的面积.* 在main方法中创建长方形类对象,并调用计算长方形面积的方法.*/ import ...

  6. python类的定义和创建_Python类对象的创建和使用

    通过前面章节的学习,我们已经学会如何定义一个类,但要想使用它,必须创建该类的对象. 创建类对象的过程,又称为类的实例化. 类名(参数) 定义类时,如果没有手动添加 __init__() 构造方法,又或 ...

  7. Java中构造方法的案例及常用类int lenght类的使用方法举例,new实例化对象方法,静态方法实例方法的举例

    目录 一.前言 二.构造方法的案例 2.1代码部分 2.2运行截图 三.常用类int lenght类的使用方法举例 3.1程序代码 3.2运行结果 四.new实例化对象方法例题 4.1程序代码 4.2 ...

  8. UserControl 中包含封装了集合对象的属性被设计器自动初始化所引起的错误!也有关于List的问题

    在CSDN上看到了一篇关于UserControl引起的问题,去重现了一下,并进行了一些小结. 自定义 UserControl 中包含封装了 List <接口> 类型字段的属性,编译后造成引 ...

  9. 继承(四):new方法都与基类中方法无关

    using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace Inher ...

最新文章

  1. 【Android 插件化】恶意软件判定规则 | 恶意软件的范围定义
  2. 安卓 buttontext怎么居中_三星发布会汇总,同样是Note 20,差距怎么就那么大呢?...
  3. 对话框Dialog总结(转)
  4. HTML5怎么编辑另一个页面,html中嵌套iframe页面 如何将一个html页面中嵌入另一个html页面...
  5. Android之BottomNavigationView实现底部按钮水纹波效果
  6. [Github项目]基于PyTorch的深度学习网络模型实现
  7. php cpu缓存 执行 代码,缓存PHP页面的代码,可以减轻CPU和MYSQL负担
  8. 用python处理excel文件_用python 读写excel文件(附资料下载)
  9. VS2010工程转VS2005工程的方法
  10. 列出IIS上的虚拟目录和网站信息。
  11. 【数据结构和算法笔记】二叉树的概念和性质
  12. Map集合常用方法总结
  13. nested exception is java.io.FileNotFoundException: class path resource [spring/spring-datasource-mog
  14. 阿铭Linux_网站维护学习笔记20190408
  15. 设置电脑分屏显示的4种情况
  16. Vmware虚拟机NAT模式设置IP
  17. openEuler 的安装及内核编译
  18. Go基础语法(短句精简版)(上)
  19. 浅谈毕业院校对程序员的影响--蝴蝶如何飞的过沧海?
  20. matlab代码建立不允许缺货,允许缺货的经济订货批量模型.doc

热门文章

  1. node 遍历读取制定后缀文件名
  2. mongoose 更新元素 DeprecationWarning: collection.update is deprecated. Use updateOne, updateMany
  3. android 6.0版本名字,棉花糖Marshmallow 是Android 6.0的名字
  4. jeecg流程梳理学习
  5. 面向对象思想 常说的OOP五大原则就是指1、单一职责原则; 2、开放闭合原则; 3、里氏替换原则; 4、依赖倒置原则; 5、接口隔离原则。...
  6. LOJ10121 与众不同
  7. 如何快速在Github找到你想要的东西
  8. 查找工具locate和find
  9. Django里面是文件静态化的方法
  10. jps、jstack、jmap、jhat、jstat、hprof使用详解