首页 > 解决方案 > 如何在 python 中使用多个空列表创建声明

问题描述

我正在尝试输入一个数字,并将创建 x 个声明的空列表。

Ex: Input number >> 3
Result:
1 = []
2 = []
3 = []

所以我正在考虑将输入 str 转换为 int,然后将 int 值插入范围(x)。然后做一个循环,可以用'= []'创建x数量的数字。在我最后的工作中,我想将存储在这些列表中的数据取出到不同的字段中。

下面是代码:

number = input("Input number")
number = int(number)

x = range (number)
for y in x.attributes:
    str(y) = []

#a loop that insert values in list into fields
driver.find_element_by_name('Name').send_keys(1[0])
driver.find_element_by_name('GRADE').send_keys(1[1])
driver.find_element_by_name('DATE').send_keys(1[2])

Error msg:
str(y) = []
^
SyntaxError: cannot assign to function call
I think declared value should str, so I have str(y) there.

通过一些简短的解释或我应该寻找什么样的指南来感谢帮助。谢谢

标签: python-3.xlist

解决方案


(例如3, "hello", True,等)由具有name的变量[]引用。例如:

a = 4

a是一个变量(其名称为“a”),它引用该4值。

但并非所有名称都有效。例如,“1”不是变量的有效名称。解释器怎么知道这1是一个变量而不是一个值?

此外,您不能将一个值分配给另一个值。即,你不能做这样的事情:

4 = True

这根本没有任何意义。

在您的特定情况下,str(y)是一个返回值的表达式。例如,如果y=3thenstr(y)将返回"3". 作为一个值,您不能为其分配另一个值!即,你不能这样做

str(y) = []

相反,您可能想要创建一个变量(具有正确的名称)并为其分配一个值。

如果您真的想创建一个在运行时生成名称的变量,您可能需要查看这个问题。虽然不推荐。相反,您可能想要创建一个值数组:

arr = []
for i in range(100):
    arr.append([])
# arr[i] is your i-th variable

推荐阅读