Python基础-面向对象初识--类
什么是类
具有相似功能和属性的一类实物
什么是对象
面向对象的优势
类的结构
如何使用类
属性的操作
class Human:
name = '人类是由名字的'
mind = '人类是由思想的'
def eat(self):
print('人类是需要吃饭的')
def work(self):
print('人类都是需要工作的')
print(Human.__dict__)
打印结果:
{'__module__': '__main__', 'name': '人类是由名字的', 'mind': '人类是由思想的', 'eat': <function Human.eat at 0x000001B626B35048>, 'work': <function Human.work at 0x000001B626B350D0>, '__dict__': <attribute '__dict__' of 'Human' objects>, '__weakref__': <attribute '__weakref__' of 'Human' objects>, '__doc__': None}
Human.body_hair = 'timao'
Human.mind = '无脑子'
del Human.mind
方法的操作
class Human:
name = '人类是由名字的'
mind = '人类是由思想的'
def __init__(self,name,age,sex):
self.n = name
self.s = sex
self.a = age
def eat(self):
return'人类是需要吃饭的'
def work(self):
print('人类都是需要工作的')
obj = Human('wang',16,'nv') ##实例化一个对象
print(obj.__dict__)
对象的角度操作对象 类
print(obj.__dict__)
##增加
obj.height = 170
##删除
del obj.n
##单独修改某个属性的值
obj.s = '女'
##单独查看某个属性的值
print(obj.a)
print(obj.__dict__)
##3对象查看类中的静态属性,只能是查看!!!
print(obj.mind)
##尝试一下是否可以修改
obj.mind = '人类也有没思想的,麻木的'
print(obj.mind) #改变的只是obj里面的内容,并未改变类的内容
print(Human.mind)
#4.对象中调用类的方法
obj2 = Human('xingmengge',12,'nv')
print(obj.eat())
#只要对象执行类中的方法,就会将对象空间自动创给方法的第一个参数 self
Python基础-面向对象初识--类的更多相关文章
- Python基础之初识类和对象
我们在前面学习了解了面向过程编程,接下来我们一起来学习一下面向对象编程.其实不管是面向过程,还是面向对 象,说白了就是一种编程方式而已.既然是面向对象编程,顾名思义,此编程方式的落地需要使用 “类” ...
- python基础-面向对象(类)
类 类的定义 >>> class P: ... pass ... >>> P <class __main__.P at 0x0000000001F4B ...
- python基础--面向对象基础(类与对象、对象之间的交互和组合、面向对象的命名空间、面向对象的三大特性等)
python基础--面向对象 (1)面向过程VS面向对象 面向过程的程序设计的核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. ...
- python基础——使用元类
python基础——使用元类 type() 动态语言和静态语言最大的不同,就是函数和类的定义,不是编译时定义的,而是运行时动态创建的. 比方说我们要定义一个Hello的class,就写一个hello. ...
- python基础——面向对象编程
python基础——面向对象编程 面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想.OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的 ...
- python基础——面向对象进阶下
python基础--面向对象进阶下 1 __setitem__,__getitem,__delitem__ 把对象操作属性模拟成字典的格式 想对比__getattr__(), __setattr__( ...
- python基础——面向对象进阶
python基础--面向对象进阶 1.isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 ...
- python基础——面向对象的程序设计
python基础--面向对象的程序设计 1 什么是面向对象的程序设计 面向过程的程序设计的核心是过程,过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优 ...
- Python 基础 面向对象之二 三大特性
Python 基础 面向对象之二 三大特性 上一篇主要介绍了Python中,面向对象的类和对象的定义及实例的简单应用,本篇继续接着上篇来谈,在这一篇中我们重点要谈及的内容有:Python 类的成员.成 ...
随机推荐
- C - AtCoDeerくんと選挙速報 / AtCoDeer and Election Report
ceil有毒啊..用ceil一直错. 思路就是模拟吧,设当前的答案是ansx和ansy. 如果比例是小于ansx的,那么就要乘以一个倍数k1,使得a * k1 >= ansx的. 所以就用cei ...
- 关于codeblock 为什么不能调试
最近codeblock不能调试了,一开始还以为把断点放在了函数里面,所以不行. 代码短,就自己看了, 有时候实在不行,真的要调试,那怎么办?其实很多时候是你的文件名的问题. 1.project的路径必 ...
- (转)nginx应用总结(1)--基础认识和应用参数优化配置
在linux系统下使用nginx作为web应用服务,用来提升网站访问速度的经验已五年多了,今天在此对nginx的使用做一简单总结. 一.nginx服务简介Nginx是一个高性能的HTTP和反向代理服务 ...
- rabbitmq 不发送ack消息如何处理:rabbitmq可靠发送的自动重试机制
转载地址:http://www.jianshu.com/p/6579e48d18ae http://www.jianshu.com/p/4112d78a8753 接这篇 在上文中,主要实现了可靠模式的 ...
- jvm 内存dump、gc查看、线程死锁,jmap、jstack、jstat
1. jstat 这个命令对于查看Jvm的堆栈信息很有用.能够查看eden,survivor,old,perm等heap的capacity,utility信息 对于查看系统是不是有能存泄漏以及 ...
- Spring Boot自动配置原理与实践(一)
前言 Spring Boot众所周知是为了简化Spring的配置,省去XML的复杂化配置(虽然Spring官方推荐也使用Java配置)采用Java+Annotation方式配置.如下几个问题是我刚开始 ...
- 上传图片转为blob URL和计算文件大小
{ getFileUrl: function getFileUrl(fileInputId) { var uri = { url: '', filename: '', filetype: '', da ...
- swift 基础-1
一.常量与变量 var testVariable = 42 testVariable = 50 println(testVariable) ...
- OPEN SQL
OPEN SQL 1.SELECT .INSERT.UPDATE.DELETE.MODIFYSELECT 命令包含如下从句:SELECT: 需要查询资料库指定表的那些列,是一行还是多行INTO: 查询 ...
- Ubuntu11.04 安装cuda4.3
一.卸载官方驱动并安装显卡驱动 1. sudo gedit /etc/modprobe.d/blacklist.conf,在文件末尾加上如下五行,然后保存 blacklist vga16fb blac ...