gpt4 book ai didi

python - 如何在 Python 中为自动创建的类对象分配名称

转载 作者:太空宇宙 更新时间:2023-11-04 09:17:10 24 4
gpt4 key购买 nike

假设我有一个名为“Map”的类,并且 Map 是用参数“country”构造的。当实例化 map 时,应该根据国家/地区的城市名称列表创建多个“城市”类的对象。但是如何命名“城市”对象呢?

伪代码:

class Map(object):
def __init__(self, country):
for i in range(len(citynames)):
cityname_i = City(i)

换句话说:假设我有城市名称列表:["Boston"、"Chicago"、"Denver"。当我做类似的事情时

us_map = Map(america)

我希望 Map 创建类 City(在别处定义)的三个实例,分别命名为“Boston”、“Chigago”和“Denver”。

我是这方面的新手,所以也许我把我的词汇表 OOP 词汇表搞混了。如果是这样,请纠正我。

编辑

看来我的例子造成了一些困惑。在我看来,我的问题与字典无关。我只是以此为例。

我正在创建一个游戏,人们可以上传任意数量的场景。我不知道他们上传了多少场景。但所有场景基本上都以相同的方式工作,有多种方法。因此,当我创建“game = Game(folder)”时,我的类应该为每个上传的场景文件创建一个类 Scenario 的实例。然后第三类“引擎”播放所有场景的...

但是如何自动为“场景”的实例分配名称?

目前我正在使用“glob”在相关文件夹中查找场景文件。所以我在类外的列表中列出了这些内容。

更新:

似乎我的问题没有说清楚(我可以即时自动创建实例)还是好人宁愿为我指明正确的方向,也不愿回答我的愚蠢问题。无论如何 - 我认为字典是要走的路。所以现在我要关闭这个问题(rplnt 是第一个回答的)并将正确答案奖励给第一个发帖者。

最佳答案

同样,就像我之前的回答一样,我会将对象放在 dictionary 中。 .在 namespace 中创建它们的优势在于它们更易于维护。 IE。如果你像你说的那样创建它们,你仍然需要了解它们,可能是通过记住它们存储在列表(或者字典?)中的引用。如果您想依赖名称列表,那么您的代码将充满 try 语句。

关于python - 如何在 Python 中为自动创建的类对象分配名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7751610/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com