本文和大家分享的主要是python语言中类的特殊方法相关用法,希望对大家有帮助。

  构造序列

  1._len_(self)

  2._getitem_(self,key)

  3._setitem_(self,key,value)

  4._delitem_(self,key)

  程序演示:

  myseq.py

  class MySeq:

  def __init__(self):

  self.lseq = ["I","II","III","IV"]

  def __len__(self):

  return len(self.lseq)

  def __getitem__(self,key):

  if 0 <= key < 4:

  return self.lseq[key]

  if __name__ == '__main__':

  m = MySeq()

  for i in range(4):

  print(m[i])

  程序的运行结果为:

  构造iter

  1._iter_(self)

  2._next_(self)

  程序演示如下:

  class MyIter:

  def __init__(self,start,end):

  self.count = start

  self.end = end

  def __iter__(self):

  return self

  def __next__(self):

  if self.count < self.end:

  r = self.count

  self.count += 1

  return r

  else:

  raise StopIteration

  if __name__ == '__main__':

  for i in MyIter(1,10):

  print(i)

  程序的运行结果为:

  构造可比较类

  1._it_()

  2._le_()

  3._gt_()

  4._ge_()

  5._eq_()

  6._ne_()

  程序演示如下:

  mycmp.py

  class MyIter:

  def __init__(self,start,end):

  self.count = start

  self.end = end

  def __iter__(self):

  return self

  def __next__(self):

  if self.count < self.end:

  r = self.count

  self.count += 1

  return r

  else:

  raise StopIteration

  if __name__ == '__main__':

  for i in MyIter(1,10):

  print(i)

  程序的运行结果为:

  构造可运算类

  1._add_()

  2._sub_()

  3._mul_()

  4._div_()

  程序演示如下:

  class Point:

  def __init__(self,x,y):

  self.x = x

  self.y = y

  def __add__(self,oth):

  return Point(self.x + oth.x , self.y + oth.y)

  def info(self):

  print(self.x,self.y)

  if __name__ == '__main__':

  pa = Point(1,2)

  pb = Point(3,4)

  pc = pa + pb

  pc.info()

  程序的运行结果为:

原文链接:http://www.maiziedu.com/wiki/python/special/

Python中类的特殊方法详解的更多相关文章

  1. Python中格式化format()方法详解

    Python中格式化format()方法详解 Python中格式化输出字符串使用format()函数, 字符串即类, 可以使用方法; Python是完全面向对象的语言, 任何东西都是对象; 字符串的参 ...

  2. Python中的魔术方法详解

    介绍 在Python中,所有以“__”双下划线包起来的方法,都统称为“Magic Method”,中文称『魔术方法』,例如类的初始化方法 __init__ ,Python中所有的魔术方法均在官方文档中 ...

  3. Python中的魔术方法详解(双下方法)

    介绍 在Python中,所有以“__”双下划线包起来的方法,都统称为“Magic Method”,中文称『魔术方法』,例如类的初始化方法 __init__ ,Python中所有的魔术方法均在官方文档中 ...

  4. Python之list列表方法详解

    # 列表test = [11, 22, 33, 44, 55, 22]# append方法,在test列表末尾增加一个元素# append(self, p_object) 参数:p_object:待添 ...

  5. Python 字符串的所有方法详解

    name = "my name is {name} and my age is {age}" # 首字母大写 name.capitalize() # 统计某个字符的个数 name. ...

  6. python MethodType方法详解和使用

    python 中MethodType方法详解和使用 废话不多说,直接上代码 #!/usr/bin/python # -*-coding:utf-8-*- from types import Metho ...

  7. Python 字符串方法详解

    Python 字符串方法详解 本文最初发表于赖勇浩(恋花蝶)的博客(http://blog.csdn.net/lanphaday),如蒙转载,敬请保留全文完整,切勿去除本声明和作者信息.        ...

  8. Python基础之 urllib模块urlopen()与urlretrieve()的使用方法详解。

    Python urllib模块urlopen()与urlretrieve()的使用方法详解   1.urlopen()方法urllib.urlopen(url[, data[, proxies]]) ...

  9. Python调用C/C++动态链接库的方法详解

    Python调用C/C++动态链接库的方法详解 投稿:shichen2014 这篇文章主要介绍了Python调用C/C++动态链接库的方法,需要的朋友可以参考下 本文以实例讲解了Python调用C/C ...

随机推荐

  1. Celery,Tornado,Supervisor构建和谐的分布式系统

    Celery 分布式的任务队列 与rabbitmq消息队列的区别与联系: rabbitmq 调度的是消息,而Celery调度的是任务. Celery调度任务时,需要传递参数信息,传输载体可以选择rab ...

  2. MySQL乱码解决办法

    MySQL支持几十种编码方式,并且默认的编码为:latinl,如果MySQL出现了乱码情况,不要慌乱,一下为你介绍两种解决编码方式: 在控制台输入命令,注意MySQL中的UTF-8写成utf8,例如我 ...

  3. mongodb的使用

    1.启动mongodb 启动mongodb在Linux中可以进入mongodb的bin目录下执行      ./mongod -dbpath=所建立的数据文件夹  -logpath=所建立的日志文件 ...

  4. 传入一个label或者button,传入5s,6和6+的文字尺寸 快速定义文字大小

    func isIphone6() -> Bool { { return true } else { return false } } func isIphone6Plus() -> Boo ...

  5. iOS,iPhone各机型设备号,屏幕宽高,屏幕模式

    //获取设备型号 NSString *DeviceModel= [[UIDevice currentDevice] model]; //获取设备系统版本号 NSString *DeviceIOSVer ...

  6. Ant执行Jmeter工程模版

    <?xml version="1.0" encoding="GB2312"?><project name="ant-jmeter-t ...

  7. [转]JAVA程序执行顺序,你了解了吗:JAVA中执行顺序,JAVA中赋值顺序

    本文主要介绍以下两块内容的执行顺序,熟悉的大虾可以直接飘过. 一.JAVA中执行顺序 静态块 块 构造器 父类构造器 二.JAVA中赋值顺序 静态块直接赋值 块直接赋值 父类继承的属性已赋值 静态变量 ...

  8. sql 表分区使用

    如果你的数据库中某一个表中的数据满足以下几个条件,那么你就要考虑创建分区表了. 1.数据库中某个表中的数据很多.很多是什么概念?一万条?两万条?还是十万条.一百万条?这个,我觉得是仁者见仁.智者见智的 ...

  9. 使用 gulp 搭建前端环境入门篇(转载)

    本文转载自: 使用 gulp 搭建前端环境入门篇

  10. MongoDB数据库基本用法

    show dbs:显示数据库列表  show collections:显示当前数据库中的集合(类似关系数据库中的表)  show users:显示用户 use <db name>:切换当前 ...