453

我正在尝试将项目添加到 python 中的数组中。

我跑

array = {}

然后,我尝试通过执行以下操作向该数组添加一些内容:

array.append(valueToBeInserted)

似乎没有这种.append方法。如何将项目添加到数组中?

4

7 回答 7

809

{}表示一个空字典,而不是一个数组/列表。对于列表或数组,您需要[].

要初始化一个空列表,请执行以下操作:

my_list = []

或者

my_list = list()

要将元素添加到列表中,请使用append

my_list.append(12)

extend列表以包含来自另一个列表的元素使用extend

my_list.extend([1,2,3,4])
my_list
--> [12,1,2,3,4]

要从列表中删除元素,请使用remove

my_list.remove(2)

字典表示键/值对的集合,也称为关联数组或映射。

要初始化一个空字典,请使用{}dict()

字典有键和值

my_dict = {'key':'value', 'another_key' : 0}

要使用另一个字典的内容扩展字典,您可以使用该update方法

my_dict.update({'third_key' : 1})

从字典中删除值

del my_dict['key']
于 2012-05-07T18:42:42.597 回答
52

如果你这样做:

array = {}

您正在制作字典,而不是数组。

如果您需要一个数组(在 python 中称为列表),您可以像这样声明它:

array = []

然后你可以添加这样的项目:

array.append('a')
于 2012-05-07T18:41:52.677 回答
19

数组(list在 python 中调用)使用该[]符号。{}用于dict(在其他语言中也称为哈希表、关联数组等),因此您不会为 dict 进行“附加”。

如果您确实想要一个数组(列表),请使用:

array = []
array.append(valueToBeInserted)
于 2012-05-07T18:42:49.150 回答
14

只是为了完成,你也可以这样做:

array = []
array += [valueToBeInserted]

如果它是一个字符串列表,这也将起作用:

array += 'string'
于 2018-09-13T16:33:24.980 回答
2

在某些语言(如JAVA )中,您使用花括号定义数组,如下所示,但在 python 中,它具有不同的含义:

爪哇:

int[] myIntArray = {1,2,3};
String[] myStringArray = {"a","b","c"};

然而,在 Python 中,大括号用于定义字典,需要key:value赋值为{'a':1, 'b':2}

要实际定义一个数组(在 python 中实际上称为列表),您可以执行以下操作:

Python:

mylist = [1,2,3]

或其他示例,例如:

mylist = list()
mylist.append(1)
mylist.append(2)
mylist.append(3)
print(mylist)
>>> [1,2,3]
于 2018-06-30T18:42:43.570 回答
2

你也可以这样做:

array = numpy.append(array, value)

请注意,该numpy.append()方法返回一个新对象,因此如果要修改初始数组,则必须编写:array = ...

于 2018-12-07T07:33:26.420 回答
-3

我相信你们都错了。你需要做:

array = array[]为了定义它,然后:

array.append ["hello"]添加到它。

于 2018-07-31T11:29:26.357 回答