孤陋寡闻了,Python中类竟可以像列表一样操作
孤陋寡闻了
Python中类竟可以像列表一样操作
小知识
01
FOOTBALL WORLD CUP
1 问题描述
如何让一个类A也可以以列表的方式操作,通过len(A)获取长度,通过A[1]获取1坐标的值
2 最佳答案
1. 加入魔法方法__len__(self) 通过len(A)获取长度
2. 加入魔法方法__getitem__(self, index) 得到下表操作
FOOTBALL WORLD CUP
3 详细介绍
这里使用一个类构成一副扑克牌。
1. collections.namedtuple: 用以构建只有少数属性没有方法的对象, Python2.6开始加入的。
4 代码演示
import collections
# 创建一个对象
Card = collections.namedtuple('Card',['rank', 'suit'])
# 构建一个扑克牌类
class FrenchDeck:
# 构建A-K牌
ranks = [str(n) for n in range(2, 11)] + list('JQKA')
suits = "spades diamonds clubs heards".split()
# 初始化列表
def __init__(self) -> None:
self._cards = [Card(rank, suit) for suit in FrenchDeck.suits for rank in FrenchDeck.ranks]
# 定义魔法方法
def __len__(self):
return len(self._cards)
def __getitem__(self, position):
return self._cards[position]
if __name__ == '__main__':
fr = FrenchDeck()
# 获取长度
print(len(fr))
# 通过下标获取值
print(fr[3])
5 代码截图
相关文章
- Python 编程 | 连载 03 - 布尔、列表和元组类型
- Python 编程 | 连载 07 - 列表与元组操作
- Python 编程骚操作连载(一)- 字符串、列表、字典和集合的处理(Part A)
- python字符串转化列表_Python列表到字符串的转换[通俗易懂]
- python表情代码_Python实现表情包的代码实例[通俗易懂]
- Python编程 列表的操作(上)
- 【说站】python列表删除项目的方法
- 关于 Python 列表的插入操作,你可能不知道
- python使用pip卸载和安装库「建议收藏」
- Python字典提取_python字典键对应的值
- python列表添加元素的方法_列表添加元素的三种方法
- python之pandas简单介绍及使用(一)「建议收藏」
- python使用opencv如何保存图片_OpenCV Python 保存图片
- Django框架开发002期 Python编程利用PyCharm专业版和社区版开发网站
- Python学习-Chapter4 操作列表
- 盘点一个Python列表转换为字典并排序的问题
- 摘录一下Python列表和元组的学习笔记
- MySQL与Python搭配,实现数据库操作。(mysql-python)
- Python简易操作MySQL入门教程(python操作mysql)
- 使用Python操作MySQL数据库快速上手(python访问mysql数据库)
- 使用Python连接SQL Server数据库(python连接sqlserver)
- Python与Linux:开启互联网信息技术时代(python和linux)
- Linux中如何离开Python环境(linux怎么退出python)
- Linux 下 Python 升级:轻松完成升级操作(linux下升级python)
- Python中对列表排序实例