[英]Creating class instances iteratively in loop
我想使用 for 循環創建 class 的多個實例並給它們不同的名稱:
robot_list = []
for i in range(10):
robot_list.append(robot + str(i) = BasicNavigator())
這不起作用,目前,我正在這樣做:
robot_list = []
robot0 = BasicNavigator()
robot_list.append(robot0)
robot1 = BasicNavigator()
robot_list.append(robot1)
robot2 = BasicNavigator()
robot_list.append(robot2)
但我想讓它更有活力,所以我選擇了例如 7 個機器人,它創建了 7 個實例,你知道嗎?
有什么辦法嗎?
由於您希望將實例與該實例的名稱一起存儲,因此使用字典是最佳選擇。
這可以幫助您創建所需數量的實例並將它們存儲在列表中。
class Robot():
def talk(self):
return "Hi, I am a robot"
robots_num = 7
robots = {}
for i in range(robots_num):
robots[f"robot_{i}"] = Robot()
print(robots["robot_0"].talk())
輸出-
Hi, I am a robot
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.