创建变量列表

问题描述 投票:-1回答:4

如何在python中创建变量列表。例如,如何创建以下变量f_1,f_2,f_3,...,f_100。我想让它们带有“ for”循环。我可以在此特定问题中使用某个功能吗?

python variables
4个回答
0
投票

字典怎么样?

numd = {}
for i in range(100):
    numd["f_{}".(i)] = 0

或只是列出一个列表,然后在其中添加一个for循环的值


0
投票

如果您确实想动态分配新变量,则可以通过exec函数运行分配命令,例如:

for i in range(100):
    value = i * 2
    var_name = "f_{}".format(i)
    exec("{} = {}".format(var_name, repr(value)))

print(f_30)

但是,您需要一个非常具体的理由来执行上述操作。

通常的期望是,您只需将值放入单个list对象中,然后按索引号访问它。例如:

f = []
for i in range(100):
    value = i * 2
    f.append(value)

print(f[30])

0
投票

如果可以在全局名称空间中创建它们,那么您还可以使用以下代码:

for i in range(100):
    globals()["f_"+str(i)] = 0

globals()为您提供了在全局命名空间中定义的名称的字典。


0
投票

使用地图和范围;在lambda函数中将整数强制转换为字符串,并在数字前面加上“ f_”:

[*map(lambda x: "f_"+str(x), [*range(1, 100)])]

使用for循环:

numeric_range = [*range(1, 100)]
lst = []
for i in numeric_range:
    lst.append("f_"+str(i))
print(lst)

使用列表理解:

["f_"+str(i) for i in range(1, 100)]
© www.soinside.com 2019 - 2024. All rights reserved.