gpt4 book ai didi

python - 如何根据参数值选择正确的列表?

转载 作者:太空宇宙 更新时间:2023-11-03 13:41:34 24 4
gpt4 key购买 nike

我有一个包含多个列表的类,即:

class my_class(object):
def __init__(self, list_A, list_B, ..., list_Z):
self.list_A = list_A
(...)
self.list_Z = list_Z

然后我需要一个方法来将一个元素附加到其中一个列表。我现在所做的是类似于 C: 中的 switch case

def add_to_list(self, list_name, item):
if list_name == 'A':
self.list_A.append(item)
elif list_name == 'B':
self.list_B.append(item)
(...) and so on

它非常低效,如果我想改变一些东西,需要做很多工作。有没有办法让它更短?我想象类似于 string.format() 的东西:

self.list_{}.append(item) .format(list_name)

最佳答案

不要围绕变量名构建程序逻辑。请指定一个项目必须满足的标准,以便分类到特定列表。如果它是简单的字母顺序,只需在您的代码中表达即可。

例子:

class my_class():
def __init__(self):
self.list_A = []
self.list_B = []
self.dict = { "A":self.list_A, "B":self.list_B }

def add_to_list(self, key):
# Logic in here
self.dict.get(key[:1]).append(key)

if __name__ == "__main__":
c = my_class()
c.add_to_list("Apple")
c.add_to_list("Bus")
c.add_to_list("Airplane")
print(c.dict["A"])
print(c.dict["B"])

关于python - 如何根据参数值选择正确的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30119909/

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