python_方法

  方法用来描述对象所具有的行为,例如,列表对象的追加元素、插入元素、删除原宿、排序,字符串对象的分隔、连接、排版、替换、烤箱的温度设置、烘烤,等等

  在类中定义的方法可以粗略分为四大类:公有方法、私有方法、静态方法和类方法。公有方法、私有方法一般是指属于对象的实例方法,其中私有方法的的名字以两个下划线(__)开始。每个对象都有自己的公有方法和私有方法,在这两类方法中都可以访问属于类和对象的成员;公有方法通过对象名直接调用,私有方法不能通过对象名直接调用,只能在实例中通过self调用,或在外部通过Python支持的特殊方式来调用.

  类的所有实例方法都必须至少有一个名为self的参数,并且必须是方法的第一个形参(如果有多个形参的话),self参数代表对象自身。在类的实例方法中访问实例属性时需要以self为前缀,但在外部通过对象名调用对象方法时,并不需要传递这个参数,如果在外部通过类名调用属于对象的公有方法,需要显式为该方法的self参数传递一个对象名,用来明确指定访问哪个对象的数据成员。

  静态方法和类方法都可以通过类名和对象名调用,但不能直接访问属于对象的成员,只能访问属于类的成员。一般将cls作为类方法的第一个参数,表示该类自身,在调用类方法时不需要为该函数传递值。

时间: 2024-11-05 22:05:16

python_方法的相关文章

python_封装redis_hash方法

xshell 进入 虚拟环境 安装 redis workon py3env # 进入虚拟环境 pip install redis # 安装redis deactivate # 退出虚拟环 简单的封装下redis中的Hash方法: 1 import redis 2 3 # 封装Hash方法 4 class RedisDB: 5 6 def __init__(self, key): # key为表名 7 8 self.conn = redis.StrictRedis(decode_responses

python_查找模块的方法

在python自带的Command Line中: 1. 查找一个模块拥有的方法 import 模块名 help(模块名) or dir(模块名) 2. 查找一个模块拥有的方法 import 模块名 help(模块名.函数名) or dir(模块名.函数名) help(模块名.类名.函数名) or dir(模块名.类名.函数名) 示例:查找一个模块拥有的方法(os.path.isfile)

python_判断字符串编码的方法

1. 安装chardet 在命令行中,进入Python27\Scripts目录,输入以下的命令:easy_install chardet 2. 操作 import chardet f = open('file','r') fencoding=chardet.detect(f.read()) print fencoding fencoding输出格式 {'confidence': 0.96630842899499614, 'encoding': 'GB2312'} ,只能判断是否为某种编码的概率.

python_如何通过实例方法名字调用方法?

案例: 某项目中,我们的代码使用的2个不同库中的图形类: Circle,Triangle 这两个类中都有一个获取面积的方法接口,但是接口的名字不一样 需求: 统一这些接口,不关心具体的接口,只要我调用统一的接口,对应的面积就会计算出来 如何解决这个问题? 定义一个统一的接口函数,通过反射:getattr进行接口调用 #!/usr/bin/python3 from math import pi class Circle(object): def __init__(self, radius): se

Python_子类调用父类的方法

1.方式一子类调用父类的方法,包含2中形式的调用.一种形式是在类内部通过继承的方式调用父类的方法,另外一种形式是子类实例化后之后通过继承的方式来调用父类的方法.如下图所示:注意一点,在子类内部通过继承的方式调用父类的属性时,必须要带上self位置参数(self只在实例化过程中和在实例调用属性时才能省略(self本来的含义就是指向实例自己)):而实例在通过继承调用父类的属性或方法时,则不用传self参数,因为实例已经实例化了呀!!!该部分的代码块如下:注意一点,在子类内部通过继承的方式调用父类的属

python_魔法方法(一):构造和析构

魔法方法总是被双下划线包围,例如:__init__() 魔法方法是面向对象的python的一切,它的魔力体现在总能在合适的时候调用. 先来介绍析构和构造的三个魔法方法: __init__():构造方法,类在实例化成对象的时候会首先调用这个方法(可选)__new__():才是在一个对象实例化的时候所调用的一个方法,与其他魔方方法不同,它的第一个参数是cls(类),其他参数会传给__init__()__del__():如果说__init__()和__new__()是对象的构造器话,__del__()

python_魔法方法(二):算术运算

python2.2之后,对类和类型做了同意,将int().float().str().list().touple()这些BIF转换为工厂函数 >>> type(len) <class 'builtin_function_or_method'> >>> type(int) <class 'type'> >>> type(dir) <class 'builtin_function_or_method'> >>

python_魔法方法(三):__str__()和__repr__()

使用python的魔法方法和time模块定制一个计时器的类 1.用time模块里的localtime()方法获取时间2.time.localtime返回struct_time格式3.表现你的类:__str__()和__repr__()先来看下__str__()和__repr__()魔法方法 >>> class A(): def __str__(self): return "我在学习python" >>> a = A() >>> pr

python_面向对象魔法方法指南

原文: http://www.rafekettler.com/magicmethods.html 原作者: Rafe Kettler 翻译: hit9 原版(英文版) Repo: https://github.com/RafeKettler/magicmethods Contents (译)Python魔法方法指南 简介 构造方法 操作符 比较操作符 数值操作符 一元操作符 常见算数操作符 反射算数运算符 增强赋值运算符 类型转换操作符 类的表示 访问控制 自定义序列 预备知识 容器背后的魔法方