当前位置: 首页 > news >正文

如果给我们直接创建的类加上索引?和len方法?

我们知道numpy也是一个类,在原始python中,我们无法对一个类进行直接索引,那么numpy是怎么做到的呢?

import numpy as np
a=np.arange(1,10)
print(a[1])

这个可以直接运行

而这个会报错。

正确做法

在我们定义一个类的时候我们可以定义__getitem__方法,这个可以让我们直接使用索引方法,例如a[1]这样,定义__len__方法就是默认可以使用len()方法。

class fun():def __init__(self,a):self.str=a.split(',')def __getitem__(self, item):result=self.str[item]return resultdef __len__(self):return len(self.str)cl=fun('1,2,3,4,5,6')
print('索引:',cl[1])
print('长度',len(cl))

并且我们可以在__getitem__方法中操作,使返回的内容是我们设定好的内容。

http://www.dtcms.com/a/354988.html

相关文章:

  • 深度学习篇---模型参数保存
  • 卷积神经网络实现mnist手写数字集识别案例
  • Apollo-PETRv1演示DEMO操作指南
  • 【Qt】QCryptographicHash 设置密钥(Key)
  • Deeplizard 深度学习课程(四)—— 模型构建
  • jwt原理及Java中实现
  • 海盗王64位dx9客户端修改篇之二
  • 学习Java29天(tcp多发多收)但是无解决客户端启动多个问题
  • ProfiNet 转 Ethernet/IP 柔性产线构建方案:网关技术保护新能源企业现有设备投资
  • LeetCode Hot 100 第7天
  • 第三十天:世界杯队伍团结力问题
  • EF Core 编译模型 / 模型裁剪:冷启动与查询优化
  • QT之双缓冲 (QMutex/QWaitCondition)——读写分离
  • 企业如何管理跨多个系统的主数据?
  • MaxCompute MaxFrame | 分布式Python计算服务MaxFrame(完整操作版)
  • 【Lua】题目小练12
  • 如何实现HTML动态爱心表白效果?
  • 多版本并发控制MVCC
  • 黑马点评|项目日记(day02)
  • C#和Lua相互访问
  • 基于金庸武侠小说人物关系设计的完整 SQL 语句,包括数据库创建、表结构定义和示例数据插入
  • Docker 详解+示例
  • map底层的数据结构是什么,为什么不用AVL树
  • 机器学习回顾(一)
  • 陪诊小程序系统开发:搭建医患之间的温暖桥梁
  • Scrapy 基础介绍
  • 安全运维——系统上线前安全检测:漏洞扫描、系统基线与应用基线的全面解析
  • lwIP MQTT 心跳 Bug 分析与修复
  • 边缘计算(Edge Computing)+ AI:未来智能世界的核心引擎
  • HarmonyOS 组件与页面生命周期:全面解析与实践