# How to declare and add items to an array in Python?

## The Question :

404 people think this question is useful

I’m trying to add items to an array in python.

I run

array = {}



Then, I try to add something to this array by doing:

array.append(valueToBeInserted)



There doesn’t seem to be a .append method for this. How do I add items to an array?

731 people think this answer is useful

{} represents an empty dictionary, not an array/list. For lists or arrays, you need [].

To initialize an empty list do this:

my_list = []



or

my_list = list()



To add elements to the list, use append

my_list.append(12)



To extend the list to include the elements from another list use extend

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



To remove an element from a list use remove

my_list.remove(2)



Dictionaries represent a collection of key/value pairs also known as an associative array or a map.

To initialize an empty dictionary use {} or dict()

Dictionaries have keys and values

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



To extend a dictionary with the contents of another dictionary you may use the update method

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



To remove a value from a dictionary

del my_dict['key']



41 people think this answer is useful

No, if you do:

array = {}



IN your example you are using array as a dictionary, not an array. If you need an array, in Python you use lists:

array = []



Then, to add items you do:

array.append('a')



16 people think this answer is useful

Arrays (called list in python) use the [] notation. {} is for dict (also called hash tables, associated arrays, etc in other languages) so you won’t have ‘append’ for a dict.

If you actually want an array (list), use:

array = []
array.append(valueToBeInserted)



12 people think this answer is useful

Just for sake of completion, you can also do this:

array = []
array += [valueToBeInserted]



If it’s a list of strings, this will also work:

array += 'string'



2 people think this answer is useful

In some languages like JAVA you define an array using curly braces as following but in python it has a different meaning:

Java:

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



However, in Python, curly braces are used to define dictionaries, which needs a key:value assignment as {'a':1, 'b':2}

To actually define an array (which is actually called list in python) you can do:

Python:

mylist = [1,2,3]



or other examples like:

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



2 people think this answer is useful

You can also do:

array = numpy.append(array, value)



Note that the numpy.append() method returns a new object, so if you want to modify your initial array, you have to write: array = ...

array = array[] in order to define it, and then:
array.append ["hello"] to add to it.