类的命名方法

1.使用大驼峰命名法:每一个单词的首字母大写(第一个的也要)
2.单词之间不需要下划线

对象的内置函数和属性

1.使用dir()函数来获取对象的内置方法和属性。返回值是一个列表。
2.返回中的__方法名__代表该对象的内置方法和属性

类的定义

class 类名:
#与java不同的是,java 的类名后面有括号,python的没有

类中的方法

1.类中的方法默认参数为self,即类自身
2.类汇中的方法若想访问类中的变量,使用self.变量名 即可(java中是this)

通过对象给自身添加新的属性
对象名.新属性=属性值
添加的属性不会再类中,不会影响到同类下的其它对象

类的构造方法-无参

def __init__(self):
#这里可以对初始化方法进行编辑,如
self.name = "tom"# 为这个类的每一个对象创建一个值为“tom”的属性

类的构造方法-有参

class Human:
def __init__(self,new_name):
self.name=new_name

对象的销毁方法__del__

对象在被销毁时(从内存中)会自动调用此对象,若不适用del <对象名>方法删除对象,则对象将在程序执行完后被销毁

class Human:
def __del__(self):
print("%s对象被销毁了!" % self.name) 

对象的__str__方法

类似于java中的toString方法,__str__方法在python中起到同样的作用
默认的__str__方法返回’包含该对象所在的类以及在内存中的地址‘的字符串
可在类中对此方法进行修改,但必须返回一个字符串
 def __str__(self):
return "我的名字是%s" % self.name的

类的私有属性和私有方法

类的私有属性和方法不能被调用,它仅在类的内部被使用。

class Women:
def __init__(self,name,age):
self.name=name
self.__age=age # 私有属性和方法的定义方法就是在名称前加两个下划线 def secret(self):
print("%s的年龄是%d" % (self.name,self.__age))# 私有属性和方法可以在内部调用 xiaofang = Women("小芳",18)
xiaofang.secret()

  输出结果:

E:\python3\python3.exe F:/PycharmProjects/project3-class/xh_09_私有属性和方法.py
小芳的年龄是18

如果在外部尝试调用私有属性

age = xiaofang.__age

  则报错:

Traceback (most recent call last):
File "F:/PycharmProjects/project3-class/xh_09_私有属性和方法.py", line 11, in <module>
age = xiaofang.__age
AttributeError: 'Women' object has no attribute '__age'

  私有方法同理不再累述。

如何强制调用私有方法?

使用 对象._类名__属性或方法名 可以强制调用方法,但开发中不适用此方法,强烈不推荐。

age = xiaofang._Women__age

  

杂七杂八

%d输出十进制数字
%x输出十六进制

03 python 对象笔记的更多相关文章

  1. 03 python学习笔记-文件操作(三)

    本文内容主要包括以下方面: 1. 文件操作基本认识2. 只读(r, rb)3. 只写(w, wb)4. 追加(a, ab)5. r+读写6. w+写读7. a+写读(追加写读)8. 文件的修改 一.文 ...

  2. Python学习笔记_Python对象

    Python学习笔记_Python对象 Python对象 标准类型 其它内建类型 类型对象和type类型对象 Python的Null对象None 标准类型操作符 对象值的比較 对象身份比較 布尔类型 ...

  3. Python学习笔记之类与对象

    这篇文章介绍有关 Python 类中一些常被大家忽略的知识点,帮助大家更全面的掌握 Python 中类的使用技巧 1.与类和对象相关的内置方法 issubclass(class, classinfo) ...

  4. Python入门笔记(5):对象

    一.学习目录 1.pyhton对象 2.python类型 3.类型操作符与内建函数 4.类型工厂函数 5.不支持类型 二.思考 1.Python解释执行原理? 2.Python对象机制? 3.Pyth ...

  5. python学习笔记:python对象

    一.python对象 python使用对象模型来存储数据,构造任何类型的值都是一个对象.所有的python对象都拥有三个特性:身份.类型和值. 身份:每个对象都有一个唯一的身份标识自己,对象的身份可以 ...

  6. OpenCV之Python学习笔记

    OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...

  7. Python学习笔记,day5

    Python学习笔记,day5 一.time & datetime模块 import本质为将要导入的模块,先解释一遍 #_*_coding:utf-8_*_ __author__ = 'Ale ...

  8. Python机器学习笔记:使用Keras进行回归预测

    Keras是一个深度学习库,包含高效的数字库Theano和TensorFlow.是一个高度模块化的神经网络库,支持CPU和GPU. 本文学习的目的是学习如何加载CSV文件并使其可供Keras使用,如何 ...

  9. Python机器学习笔记:sklearn库的学习

    网上有很多关于sklearn的学习教程,大部分都是简单的讲清楚某一方面,其实最好的教程就是官方文档. 官方文档地址:https://scikit-learn.org/stable/ (可是官方文档非常 ...

随机推荐

  1. ciscn2019华北赛区半决赛day1web5CyberPunk

    刚比赛完的一段时间期末考试云集,没有时间复现题目.趁着假期,争取多复现几道题. 复现平台 buuoj.cn 解题过程 首先进入题目页面 看起来没有什么特别的,就是一个可以提交信息的页面.查看响应报文也 ...

  2. 2018-2019-2 网络对抗技术 20165212 Exp7 网络欺诈防范

    2018-2019-2 网络对抗技术 20165212 Exp7 网络欺诈防范 原理与实践说明 1.实践目标 理解常用网络欺诈背后的原理,以提高防范意识,并提出具体防范方法. 2.实践内容概述 简单应 ...

  3. 怎么设置cookie,怎么设置cookie以及删除cookie和cookie详解

    在操作cookie之前,先来看一下cookie长什么样. 可以看到,cookie是一个个键值对(“键=值”的形式)加上分号空格隔开组合而成, 形如: "name1=value1; name2 ...

  4. PHP 构造函数和析构函数

    构造函数 __construct ([ mixed $args [, $... ]] ) : void PHP 5 允行开发者在一个类中定义一个方法作为构造函数.具有构造函数的类会在每次创建新对象时先 ...

  5. matplotlib 常用操作

    标准的Python中用列表(list)保存一组值,可以当作数组使用.但由于列表的元素可以是任何对象,因此列表中保存的是对象的指针.这样一来,为了保存一个简单的列表[1,2,3],就需 要有三个指针和三 ...

  6. Sword zlog日志库使用

    配置文件*.conf 配置文件具体内容如下: [global] #改变量可以不写,默认是true,如果使用设置为true时,Zlog就会严格检查所用格式和规则,否则,忽略所用格式和规则. strict ...

  7. 我是如何同时拿到阿里和腾讯offer的 【转载】

    前言 三月真是一个忙碌的季节,刚刚开学就需要准备各种面试和笔试(鄙视).幸运的是,在长达一个月的面试内推季之后,终于同时拿到了阿里和腾讯的offer,还是挺开心的.突而想起久未更新的博客,就冒昧学一学 ...

  8. 算法习题---5.3字典(Uva10815)

    一:题目 给出一段英文,里面包含一些单词,空格和标点,单词不区分大小写,默认都为小写.按照字典序输出这些单词(这些单词不能有重复,字母全部变成小写) (一)样例输入 Adventures in Dis ...

  9. 【Java】Junit快速入门

    Junit介绍 JUnit是一个Java语言的单元测试框架.它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个. JUnit ...

  10. Linux记录-mysql参数优化

    1.参数优化show variables like ''/etc/my.cnf[mysqld]Max_connections =1024 #请求的最大连接数back_log =1024 #mysql能 ...