gpt4 book ai didi

python - 如果字符串与列表名称匹配,则将数字附加到列表

转载 作者:行者123 更新时间:2023-12-01 00:19:53 25 4
gpt4 key购买 nike

我正在尝试编写一个Python程序,如下所示:

list_a = []
list_b = []
list_c = []

listName = str(input('insert list name: '))
listValue = int(input('insert value: '))
listName.append(listValue)

但不幸的是“listName.append()”不起作用。

仅使用 IF 函数,如下所示:

    if listName == 'list_a':
list_a.append(listValue)

这是不切实际的,因为我实际上正在处理 600 多个列表......

还有其他方法可以让这样的事情正常工作吗?

非常感谢您的帮助!

提前非常感谢您!!

最佳答案

当您想使用变量名称来保存数据(例如股票名称)时,您几乎肯定应该使用以数据为键的字典。如果您愿意,您仍然可以预先填充字典(尽管不是必须)。

您可以将现有代码更改为:

# all the valid names
names = ['list_a', 'list_b', 'list_c']

# pre-populate a dictionary with them
names = {name:[] for name in names}

# later you can add data to the arrays:
listName = str(input('insert list name: '))
listValue = int(input('insert value: '))
# append value
names[listName].append(listValue)

有了这个,您的所有数据都在一个结构中。循环遍历它会很容易,进行汇总统计(例如求和/平均值)。拥有一个包含 600 个键的字典没什么大不了的,但是拥有 600 个单独的变量就会造成困惑。

如果您尝试添加一个不存在的名称,这将引发一个关键错误,如果可能的话,您可以在 try block 中捕获该错误。

关于python - 如果字符串与列表名称匹配,则将数字附加到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59025357/

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