'''1.数据属性  2.函数属性'''

#创建一个类
class Chinese:
"这是一个中国人的类" #类属性
money=4000
#注意类和对象均用点来访问自己的属性
def __init__(self,name,age,grender):
self.mingzi=name
self.nianji=age
self.xingbie=grender def tu():
print("随地吐痰") def cha_dui(self):
print("%s 插队到前面"%self.mingzi) def eat_food(self,food):
print("%s 正在吃 %s" % (self.mingzi,food)) #实例属性
p1=Chinese("元昊",18,"boy") print(p1.__dict__)#对象数据属性 --实例只有数据属性 print(p1.mingzi)
print(p1.__dict__['xingbie']) Chinese.cha_dui(p1)
print(Chinese.__dict__) p1.team="zhongguo"
print(p1.team) print(dir(p1))
p1.cha_dui()
print(p1.eat_food("饭"))
print(p1.money) #实例一定能访问类属性,类属性访问不了实例属性 # print(Chinese)
# print(Chinese.money)
# Chinese.tu()
# Chinese.cha_dui('元昊') #查看类的属性
#print(dir(Chinese)) #查看类的属性字典
# print(Chinese.__dict__['money'])
# Chinese.__dict__['cha_dui']('yuanhao') # print(Chinese.__name__)
# print(Chinese.__doc__)
# print(Chinese.__bases__)
# print(Chinese.__class__) #实例化对象
# p1=Chinese()
#
# print(p1) # def test():
# pass
#
#
# print(test)
#类属性的增删查改
class Chinese:
#类属性
country="China" def __init__(self,name):
self.name=name def play_basketball(self,ball):
print("%s 正在打 %s" %(self.name,ball)) #查看
print(Chinese.country) #修改
Chinese.country="Japan" print(Chinese.country) p1=Chinese("alex")
print(p1.__dict__)
print(p1.country) #增加
Chinese.resname="XXXX"
print(Chinese.resname)
print(p1.resname) #删除类的属性
del Chinese.resname
print(Chinese.__dict__) #类的属性函数添加
def eat_food(self,food):
print("%s xxxxx%s" %(self.name,food)) Chinese.eat=eat_food print(Chinese.__dict__)
p1.eat("肉") def test(self):
print("test") Chinese.play_ball=test
#Chinese.play_ball("sss")
p1.play_ball()

#实例属性的增删查改
class Chinese:
#类属性
country="China" def __init__(self,name):
self.name=name def play_basketball(self,ball):
print("%s 正在打 %s" %(self.name,ball)) p1=Chinese("alex") #查看
print(p1.__dict__)
print(p1.name)
p1.play_basketball("篮球") #增加数据属性
p1.age=18
print(p1.__dict__)
print(p1.age) #不要修改底层的属性字典
# p1.__dict__['sex']="maile"
# print(p1.__dict__) #修改
p1.age=19
print(p1.__dict__) #删除
del p1.age
print(p1.__dict__) #定义一个类,只当一个作用域去用
class Mydate:
pass
x=10
y=20
Mydate.x=2
Mydate.y=8
print(x,y)
print(Mydate.x,Mydate.y)

  

												

python面向对象--类和实例的认识的更多相关文章

  1. Python面向对象-类、实例的绑定属性、绑定方法和__slots__

    绑定属性 从之前的文章中,我们知道python是动态语言——实例可以绑定任意属性. 那如果实例绑定的属性和类的属性名一样的话,会是什么情况呢? >>> class Student(o ...

  2. Python学习(七)面向对象 ——类和实例

    Python 面向对象 —— 类和实例 类 虽然 Python 是解释性语言,但是它是面向对象的,能够进行对象编程.至于何为面向对象,在此就不详说了.面向对象程序设计本身就很值得深入学习,如要了解,请 ...

  3. python基础——类和实例

    python基础——类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都 ...

  4. Python学习 Day 7 面向对象 类和实例 访问限制

    面向对象编程 面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 面向过程的程 ...

  5. python(五):面向对象--类和实例

    一.类的基本概念 类是用来创建数据结构和新类型对象的主要机制.一个类定义了一系列与其实例对象密切关联的属性.典型的属性包括变量(也被称为 类变量)和函数(又被称为方法). 1.class上下文 cla ...

  6. Python面向对象—类属性和实例属性

    属性:就是属于一个对象的数据或函数元素 类有类方法.实例方法.静态方法.类数据属性(类变量)和实例数据属性(实例变量). 类属性:包括类方法和类变量,可以通过类或实例来访问,只能通过类来修改. 实例属 ...

  7. python 面向对象(类)

    面向对象,即是将具备某种共性的事物抽象成一个类(模板),然后再根据类来创建实例对象进行具体的使用. 概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写, ...

  8. python之---类和实例

    类和实例: 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但 ...

  9. python基础-----类和实例

    在python中,首字母大写的名称指的是类,这个类定义中括号的内容是空的. 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板而实例是根据类创建出来的一个个具体 ...

随机推荐

  1. HTTP入门(二):用Chrome开发者工具查看 HTTP 请求与响应

    HTTP入门(二):用Chrome开发者工具查看 HTTP 请求与响应 本文简单总结HTTP的请求与响应. 本文主要目的是对学习内容进行总结以及方便日后查阅. 详细教程和原理可以参考HTTP文档(MD ...

  2. Matlab 中 函数circshift()的用法

    a = [ ; ; ]; b = [- - -; - - -;- - -]; c = [ ; ; ]; Hist(:,:,) = a; Hist(:,:,) = b; Hist(:,:,) = c; ...

  3. Why Use the Widget Factory?

    https://learn.jquery.com/jquery-ui/widget-factory/why-use-the-widget-factory/ Writing jQuery plugins ...

  4. qbzt day3 下午(好难)

    内容提要 有关数据结构的例题 求逆序对数 统计每个数前面有多少比他大的数 开数组表示这个数之前0~9这些数出现了几次 动态将某个点加一,动态求前缀和 用树状数组 如果数太大了怎么办? 离散化 步骤:先 ...

  5. 在自定义组件中获取spring底层组件

    要想在自定义组件中获取spring底层的各种组件,只需让自定义组件实现一系列接口即可,这些接口都是Aware的子接口.常见的有: 1. ApplicationContextAware——用于获取IOC ...

  6. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_02 递归_2_练习_使用递归计算1-n之间的和

    输出6 1到100之间的和 求和的原理

  7. 佳能mp288拆解步骤--绝对原创

    http://itbbs.pconline.com.cn/office/50663206.html 佳能mp288拆解步骤--绝对原创 gotobug Lv1太平洋舰队新兵 楼主 2013-10-13 ...

  8. 32 kill不掉的语句

    32 kill不掉的语句 在mysql中有两个kill命令:一个是kill query+线程id,表示终止这个线程正在执行的语句:一个是kill connection+线程id,缺省connectio ...

  9. 桌面应用开发用到的Framework

    桌面应用开发用到的Framework https://github.com/zhangqs008/Framework_Winform

  10. js-用判断音乐或图片是否加载完成的方式来控制页面的现实

    判断页面加载,加完完成后,内容页显示,加载条隐藏 百度搜索方法很多,大多都是: document.onreadystatechange = function() //当页面加载状态改变的时候执行fun ...