class Student():def __init__(self,name):self.name = nameself.a,self.b = 0,1self.ls = ['a','b','c','d','e']def __str__(self):  #目的就是返回一个值给调用处return self.namedef __iter__(self):  #实例本身就是迭代对象,所以这里要返回自己return selfdef __next__(self):  #设置for循环的返回值self.a,self.b = self.b,self.a + self.b  #计算下一个值if self.a >100000:raise StopIteration() #退出循环条件return self.a  #返回下一个值def __getitem__(self, item):  #这个方法就是为了将实例对象变成一个可以像列表那样通过索引取值# return self.ls[item]    #根据本身定义的列表然后再根据传入的索引取出相对应的值# 下面的方法是添加了切片的方法if isinstance(item,int):return self.ls[item]if isinstance(item,slice):#其中slice() 函数实现切片对象,主要用在切片操作函数里的参数传递。# start -- 起始位置 stop -- 结束位置 step -- 间距#class slice(start, stop[, step])start = item.startstop = item.stopstep = item.stepif step is None:step = 1if start is None:start = 0l = []for i in range(start,stop,step):l.append(self.ls[i])return ls = Student('lisi')
# print(Student('zhanghua'))
# print(s)
# for n in s:
#     print(n)print(s[1])
print(s[:4:2])  #使用步距的切片方式
print(s[2:4])
new_list = ['a','b','c','d','e','f']# 使用枚举类型,返回key与value
for i,val in enumerate(new_list):print(i,val)

Python 类的定制相关推荐

  1. python 类的定制_Python基础:20类的定制

    类中有一些可自定义的特殊方法,它们中的一些有预定义的默认行为,而其它一些则没有,留到需要的时候去实现.这些特殊方法是Python中用来扩充类的强有力的方式.它们可以实现模拟标准类型和重载操作符等.比如 ...

  2. python中的定制类(转载)

    python中的定制类(转载)<?xml version="1.0" encoding="UTF-8"?> 看到类似__slots__这种形如__x ...

  3. python中定制类_python定制类__str__(实例详解)

    在接下来的文章中,让我们明白什么是python中的自定义类.学习什么是python的自定义类,python定制类可以扮演何种角色在python编程.当你看到像__xxx__ __slots__变量或函 ...

  4. python常用知识点总结-python 类知识点总结

    python 类知识点总结 面向对象思想: 1.设计的时候,一定要明确应用场景 2.由对象分析定义类的时候,找不到共同特征和技能不用强求 1.简述类.对象.实例化.实例这些名词的含义: 类:从一组对象 ...

  5. python类高级用法_十.python面向对象高级用法

    1.反射 1.1 什么是反射 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省).这一概念的提出很快引发了计算机科学领域关于应用反射性的 ...

  6. Python面向对象之定制对象独有特征

    类中定义的函数是类的函数属性,类可以使用,但使用的就是一个普通的函数而已,意味着需要完全遵循函数的参数规则,该传几个值就传几个 一.引入 class OldboyStudent:school = 'o ...

  7. python 类 对象 魔法方法概念+习题

    类 对象 类 对象是c++和java中都有的内容,python定义类的简单语法如下: class 类名: -类变量或者方法 Python 的类定义有点像函数定义,都是以冒号:作为类体的开始,以统一缩进 ...

  8. 【Python基础】07、Python类与面向对象

    一.面向对象编程(OOP) 程序=算法+数据结构=指令+数据 1.代码可以选择以指令为核心或以数据为核心进行编写 两种范型: 以指令为核心:围绕"正在发生什么"进行编写 面向过程编 ...

  9. python类和oop基础知识

    文章目录 oop:面向对象程序设计 python类的特点: oop基本概念: 1.属性继承搜索: 2.类和实例: 3.类方法调用 4.编写类树 5.代码重用 oop:面向对象程序设计 1.类:一些函数 ...

最新文章

  1. 虚拟机为cenots配置网络
  2. 洛谷P4480 【[BJWC2018]餐巾计划问题】
  3. 【转】一台台式机电脑 是集成显卡,我现在想搞两个显示器,一台显示器看监控,一台显示器自己...
  4. Flash中如何使用滤镜
  5. 字符编码:ASCII,Unicode(UTF-8)
  6. 给妹子修电脑,会有哪些故事?
  7. Springsecurity之AuthenticationProvider
  8. python线程安全的单例_详解python实现线程安全的单例模式
  9. [spring boot]idea中实现热部署的方法
  10. 计算机算法设计与分析 租用游艇问题
  11. 14.UA池和代理池
  12. Linux下用Java获取本机IP
  13. css 电子数字字体
  14. 《算法导论》2.2练习答案
  15. java web 微博系统_【Java项目】——Java Web完整项目(微博系统)-Go语言中文社区...
  16. windos无法对计算机进行,电脑提示windows无法完成格式化如何解决
  17. mingw+msys windows下配置
  18. 【MySQL】InnoDB存储引擎
  19. 【Codeforces 924C】Riverside Curio
  20. 开发常用的Git命令

热门文章

  1. 网络原理之TCP/IP协议
  2. BZOJ.4598.[SDOI2016]模式字符串(点分治 Hash)
  3. CentOS7和CentOS8 FreeSWITCH 1.10.7 简单图形化界面5--阿里云服务器设置
  4. 计算机键盘复制键,键盘按键设置复制粘贴的方法
  5. Android - 制作聊天气泡.9格式
  6. 无法启动此应用因为计算机丢失,开机无法启动此程序因为计算机中丢失怎么回事...
  7. 白鹭引擎 4.0 发布 让重度H5游戏研发更简单
  8. 微信小程序提取汉字字母大写
  9. python学习笔记(三)之字符串的处理
  10. 苹果手机尺寸详细表及iPhoneX、iPhoneXS、iPhoneXR、iPhoneXSMax、iPhone 11、iPhone 11 Pro、iPhone 11 Pro Max、屏幕适配