python - 如何在python中自动动态创建类的实例
问题描述
我有一个类,我想动态创建该类的实例。我不知道实例的确切数量,因此我不想通过这样的已知变量创建这些类:
class Person:
def __init__(self, age, gender):
self.age=age
self.gender=gender
P1=Person(23, "M")
P2=Person(64, "F")
P3=Person(12, "M")
我正在寻找类似的东西
i=0
maxPopulation=10
while i< maxPopulation:
Person(randomx, randomy)
i+=1
但是那样我不知道如何访问实例。在运行时。
我不是在寻找随机函数。
解决方案
将它们添加到列表中。
i=0
maxPopulation=10
people = []
while i< maxPopulation:
people.append(Person(randomx, randomy))
i+=1
或者,稍微清理一下以更 Pythonic:
maxPopulation=10
people = []
for _ in range(maxPopulation):
people.append(Person(randomx, randomy))
或者更Pythonic:
max_population = 10
people = [Person(randomx, randomy) for _ in range(max_population)]
推荐阅读
- javascript - 错误类型错误:无法读取 null 的属性“样式”
- spring - com.mongodb.MongoSocketOpenException:使用 Spring Boot 和 mongodb 云打开异常套接字
- python - 如何在句子中找到每个单词可能被 n 个其他单词分隔的单词列表
- database - 在我的 odbc 驱动程序(3.5)中实现了 SQLExtendedFetch 函数,但是 odbc 驱动程序管理器仍然说驱动程序不支持这个函数
- python - Websocket:使用 Dart 客户端和 Autobahn-python 服务器
- javascript - 使用 reactjs 将 api 数据显示到前端(轮询)
- ios - 计算 CGRect 上的新大小和位置
- angular - Angular如何全局/应用范围模板
- sql - SQL 计算总和子总数但唯一
- php - Gettext - PHP - WSL Ubuntu系统中的语言环境具有完整的代码,而浏览器具有较短的代码