python - 如何在 Python 中将方法参数的类型设置为可变对象
问题描述
如何在 python 中使用可迭代的特定对象输入创建如下方法:
在 Java 中,我们可以像下面这样创建它:
abstract public ArrayList<Device> returnDevices(ArrayList<Object> Device){
...
}
在 python 中,我想创建一个模型,如下所示:
class OptionModel:
def __init__(
self,
option: str = None,
) -> None:
self.__option = option
@property
def option(self):
return self.__option
@option.setter
def option(self, value):
self.__option = value
在另一个类中,我想获得一个OptionModel对象列表,如下所示:
class Command:
def __init__(
self,
options: List[OptionModel] = None,
) -> None:
self.__options = options
@property
def options(self) -> List[OptionModel]:
return self.__options
@options.setter
def options(self, value: List[OptionModel]):
self.__options = value
当在Options _上进行 for 循环时,在我的 IDE 中获取 OptionModel:
def print_summery(self):
for option in self.options:
print(" {} {}\t\t{}".format(option.option, option.alias, option.brief))
解决方案
推荐阅读
- javascript - 在 blogger.com 上重新定位徽标
- php - 使用 PHP Simple HTML DOM Parser 查找带有类的 div,它是纯文本
- terraform - Terraform 持久性和动态基础设施部分?
- mysql - 在 MySQL 中,如何在给定 ID 的记录之后/之前检索记录?
- prolog - ECLiPSe Prolog - IC 库:作为变量的整数列表
- c - qsort在c中相等大小的char数组列表上
- bit-manipulation - 可变长度编码,要读取多少位?
- python - 重新排序图的顶点。它应该像彼得森图一样排序
- c - 仅使用 stdio.h 中的函数循环 fgets 语句
- mysql - MySQL 作为 ADO NET 目标导致 System.NullReferenceException