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

PythonArrays

Python Problem Overview


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?

Python Solutions


Solution 1 - Python

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

Solution 2 - Python

If you do it this way:

array = {}

you are making a dictionary, not an array.

If you need an array (which is called a list in python ) you declare it like this:

array = []

Then you can add items like this:

array.append('a')

Solution 3 - Python

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)

Solution 4 - Python

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'

Solution 5 - Python

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]

Solution 6 - Python

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 = ...

Solution 7 - Python

I believe you are all wrong. you need to do:

array = array[] in order to define it, and then:

array.append ["hello"] to add to it.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionAkshaiShahView Question on Stackoverflow
Solution 1 - PythonlukecampbellView Answer on Stackoverflow
Solution 2 - PythonPablo Santa CruzView Answer on Stackoverflow
Solution 3 - PythonCollin GreenView Answer on Stackoverflow
Solution 4 - PythonBig McLargeHugeView Answer on Stackoverflow
Solution 5 - Pythonuser1767754View Answer on Stackoverflow
Solution 6 - PythonAurelie GiraudView Answer on Stackoverflow
Solution 7 - PythonElizaView Answer on Stackoverflow