如何在Python中声明和添加项目到数组?


386

我试图将项目添加到python中的数组。

我跑

array = {}

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

array.append(valueToBeInserted)

似乎没有.append办法。如何将项目添加到数组?

Answers:


692

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

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

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']

哦,好的,我知道它是一个列表,需要有一个键和一个值,但我想不是
AkshaiShah,2012年

38

不,如果您这样做:

array = {}

在您的示例中,您使用的array是字典,而不是数组。如果需要数组,则在Python中使用列表:

array = []

然后,要添加项目,请执行以下操作:

array.append('a')

1
细细挑剔:您什么也没声明。您在当前作用域中使一个名称引用一个字典/列表对象。

16

数组(list在python中称为)使用该[]符号。{}是用于dict(在其他语言中也称为哈希表,关联的数组等),因此您无需为字典添加“追加”。

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

array = []
array.append(valueToBeInserted)

11

仅出于完成目的,您还可以执行以下操作:

array = []
array += [valueToBeInserted]

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

array += 'string'

2

在某些语言(例如JAVA)中,您可以使用花括号定义数组,如下所示,但在python中,其含义不同:

Java:

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

但是,在Python中,花括号用于定义字典,需要将key:value赋值设置为{'a':1, 'b':2}

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

蟒蛇:

mylist = [1,2,3]

或其他示例,例如:

mylist = list()
mylist.append(1)
mylist.append(2)
mylist.append(3)
print(mylist)
>>> [1,2,3]

2

您也可以:

array = numpy.append(array, value)

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


-1

我相信你们都错了。您需要执行以下操作:

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

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


4
定义数组的正确方法是array = []
Shai

1
您也可以使用定义它array = list()。请注意,使用[]将其定义为数组可提供仅适用于数组的特定功能,例如将数组除以单个整数。例如 array/3
道尔顿·怀特

SyntaxError:语法无效
CodeGuru

使用python时只需坚持列出即可
CodeGuru
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.