如何从列表中创建可能在项目数量上有所不同的增量变量。 Python 3

问题描述 投票:1回答:3

我是新手。我已经从.csv文件创建了一个列表:

 h = [2.3, 1.4, 4.5, 4.5, 1.4, 2.3]

列表中的项目数量(从2到36)不等,具体取决于.csv文件。我想像这样从列表中创建增量变量(所以我稍后可以在代码中使用它们):

 L1 = 2.3
 L2 = 1.4
 L3 = 4.5
 L4 = 4.5
 L5 = 1.4
 L6 = 2.3

我的问题是.csv文件列表中的项目数量各不相同,我尝试使用增量和枚举方法,但我根本无法使其工作。

python python-3.x
3个回答
2
投票

如果我理解正确,那么从列表中创建一个dict会有所帮助。 您可以使用此dict理解语句。

h = [2.3, 1.4, 4.5, 4.5, 1.4, 2.3]

result = {f"L{index+1}": value for index, value in enumerate(h)}

> {'L1': 2.3, 'L2': 1.4, 'L3': 4.5, 'L4': 4.5, 'L5': 1.4, 'L6': 2.3}

您可以通过指定密钥来获取所需的数字。例如:

print(result["L1"])

> 2.3

0
投票

您可以通过索引简单地获取每个元素的值,而不是为列表中的每个元素定义一个变量:

h[0] # first element of the list (2.3)
h[1] # second element of the list (1.4)
h[2] # third element of the list (4.5)
# etc

你可以使用像print(h[0])

len(h)为您提供h中的元素数量。列表中的最后一个元素有索引len(h)-1(在您的示例中为5)。


-1
投票

我建议你坚持使用列表存储数据,并通过h[i]访问它

但是,你仍然可以使用exec:

for i,x in enumerate(h):
    exec(f'L{i}=x')

请注意,第一个L将是L0,如果你想从1开始,请更改上面的代码。

热门问题
推荐问题
最新问题