How to call a different instance of the same class in python?(如何在Python中调用同一个类的不同实例?)
本文介绍了如何在Python中调用同一个类的不同实例?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我是新手。我正在用SIMPY编写一个模拟来模拟一条生产线,它看起来是这样的:机器1->缓冲区1->机器2->缓冲区2->以此类推。
我的问题: 我有一个类,Machine,其中有几个实例。假设当前实例是Machine 2。此实例的方法会影响Machine 1和Machine 3的状态。例如:如果缓冲区2为空,则Machine 3空闲。但当机器2将部件放入缓冲区2时,机器3应被激活。
那么,从同一类的任何给定实例中引用该类的不同实例的方法是什么? 还有一个稍有不同的问题:从另一个类的当前实例调用对象(在本例中为缓冲区1和2)的方式是什么?编辑:已编辑以增加系统的清晰度。
推荐答案
一个类的实例知道该类的其他实例的情况并不常见。
我建议您在类本身中保留某种类型的实例集合,并使用类查找实例:
class Machine(object):
lst = []
def __init__(self, name):
self.name = name
self.id = len(Machine.lst)
Machine.lst.append(self)
m0 = Machine("zero")
m1 = Machine("one")
print(Machine.lst[1].name) # prints "one"
这篇关于如何在Python中调用同一个类的不同实例?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
编程基础网
本文标题为:如何在Python中调用同一个类的不同实例?
基础教程推荐
猜你喜欢
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
