List 使用计数器动态更改列表的名称
我有一套清单List 使用计数器动态更改列表的名称,list,List,我有一套清单 list_0=[a,b,a,b,b,c,f,h................] list_1=[f,g,c,g,f,a,b,b,b,.............] list_2=[...............................] ............ list_j=[...............................] 其中j是(k-1),其中存储了数千个值。我想计算特定值在特定列表中的次数。我只能有8
list_0=[a,b,a,b,b,c,f,h................]
list_1=[f,g,c,g,f,a,b,b,b,.............]
list_2=[...............................]
............
list_j=[...............................]
其中j是(k-1),其中存储了数千个值。我想计算特定值在特定列表中的次数。我只能有8个不同的值(我的意思是,这些列表中的每个元素只能有8个特定值中的一个,比如a,b,c,d,e,f,g,h;所以我想计算每个列表中有多少次值a,多少次值b,等等)。
这并不复杂。
最复杂的是,至少对我来说,即时更改列表的名称。
我试过:
但它不起作用。
我已经阅读了一些类似问题的其他答案,但我无法将其翻译为适合我的需要:-(
Tkx.您想要的是通过名称动态访问局部变量。这是可行的,您只需要
locals()
如果您有名为“var0”、“var1”和“var2”的变量,但您希望在不硬编码的情况下访问它们的内容。您可以按如下方式执行:
var0=[1,2,3]
var1=[4,5,6]
var2=[7,8,9]
对于范围(3)中的i:
变量=局部变量()['var'+str(i)]
打印(变量)
输出:
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
虽然可行,但不建议这样做,您可以将这些列表存储在dict中,其中包含它们的名称作为字符串键,以便以后只需使用字符串即可访问它们,而无需考虑变量范围
如果你的名字只差一个数字,那么也许你也可以使用一个列表,这个数字就是其中的索引
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]