Lists

A Python list is an ordered and changeable collection of data objects. Unlike an array, which can contain objects of a single type, a list can contain a mixture of objects. They start from 0. (The 1st element would actually be the 0th element)

List Operations

  • aList[i] - This access your list at index i. An index is a numeric value that represents the position of an element within that data structure. For example, the first element of aList is at index 1, represented by aList[1].
  • x <- aList[i] - Assigns value of aList[i] to variable x
  • aList[i] <- x - Assigns value of x to aList[i]
  • aList[i] <- aList[j] - Assigns value of aList[j] to aList[i]

  • INSERT(aList, i , value) - aList is the list in which you want to insert the value. i is the index at which you want to insert the value. value is the value you want to insert at that index
  • APPEND(aList, value) - The value you put in is placed at the end of aList
  • REMOVE(aList, i) - aList is the list in which you want to delete the value. i is the index at which you want to delete the value.
  • LENGTH(aList) - Gives you the number of elements in aList

  • FOR EACH item IN aList {

} - Item is a var assigned each element of aList in order from first element to last. The code inside the for loop is run once for every assignment of item.

Creating a list:

In order to create a list named “aList”, type aList = []. This creates an empty list. A list with elements would look like this aList = [element1,element2,element3]

Append:

In Python, the append() method is used to add an element to the end of a list. The element in the parenthesis is what is added to the list.

# College Board Pseudo Code
aList  []

USER_INPUT  ("Enter an item you want (or 'q' to quit): ")

REPEAT UNTIL USER_INPUT  q{
    APPEND (aList, USER_INPUT)
}

DISPLAY(aList)
aList = []

while True:
    user_input = input("Enter an item you want (or 'q' to quit): ")
    
    if user_input.lower() == 'q':
        break
    
    aList.append(user_input)

print("Things You Want:", aList)
Things You Want: ['1', 'item', '2']

Accessing an element:

In order to access a specific element from a list, you would put the element in []. For example, If I had to access the third element in the list aList, I would say “aList[2]”.

# College Board Pseudo Code
aList  []

USER_INPUT  ("Enter an item you want (or 'q' to quit): ")

REPEAT UNTIL USER_INPUT  q{
    APPEND (aList, USER_INPUT)
}

DISPLAY(aList[2])
aList = []

while True:
    user_input = input("Enter an item you want (or 'q' to quit): ")
    
    if user_input.lower() == 'q':
        break
    
    aList.append(user_input)

print("The Second thing on your list is", aList[1])
print(aList)
The Second thing on your list is 3
['2', '3', '6', 'hunt']

Deleting an element:

In order to delete an element, choose the element the same way you would access it but put “del” before it. For example, If I had to delete the third element in a list called aList, I would say “del aList[2]”.

# College Board Pseudo Code
aList  []

USER_INPUT  ("Enter an item you want (or 'q' to quit): ")

REPEAT UNTIL USER_INPUT  q{
    APPEND (aList, USER_INPUT)
}

REMOVE (aList, 2)

DISPLAY(aList)
aList = []

while True:
    user_input = input("Enter an item you want (or 'q' to quit): ")
    
    if user_input.lower() == 'q':
        break
    
    aList.append(user_input)

print("This is your list: ", aList)

del aList[1]

print("This is your new list: ", aList)
This is your list:  ['5', '4', '4']
This is your new list:  ['5', '4']

Assigning a value:

To assign the values a list named bList to aList of one list to another you simply have to do aList = bList.

Length of a list:

To get the length of a list named aList, you just need to do len(aList). This gives you the number of elements in a list.

aList = ["Yeezys","Yeezys"]
bList = ["No Yeezys"]

bList = aList
list_length = len(bList)

print("Things I want:", bList)
print("How many yeezys:",list_length)
Things I want: ['Yeezys', 'Yeezys']
How many yeezys: 2

For each item in a list:

If you want to do something to each item in a list, you will need to iterate over ir. an example of it is shown below.

my_list = [1, 2, 3, 4, 5]
print("Original List:", my_list)

for i in range(len(my_list)):
    my_list[i] += 1

print("Modified List:", my_list)
print("Length of the list:", len(my_list))
Original List: [1, 2, 3, 4, 5]
Modified List: [2, 3, 4, 5, 6]
Length of the list: 5

Sum of Even Numbers of a list

Pseudocode


sum -> 10
nums  [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_sum  0

FOR EACH score IN nums
    IF score MOD 2 = 0 THEN
        even_sum  even_sum + score
    END IF
END FOR

DISPLAY ("Sum of even numbers in the list:", even_sum)



  Cell In[3], line 3
    nums ← [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
         ^
SyntaxError: invalid character '←' (U+2190)
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_sum = 0
for score in nums:
    if score % 2 == 0: # Check if the remainder when divided by 2 is 0 (even number)
        even_sum += score # If previous requirement is fulfilled, add to sum
print("Sum of even numbers in the list:", even_sum)
Sum of even numbers in the list: 30
## Overview of  Python and College Board Pseudo Code


Creating a List
Python: my_list = [1, 2, 3]
Pseudo Code: my_list  [1, 2, 3]

Accessing Elements
Python: value = my_list[index]
Pseudo Code: value <- my_list[index]

Appending Elements
Python: my_list.append(new_value)
Pseudo Code: Append new_value to my_list

Inserting Elements
Python: my_list.insert(index, new_value)
Pseudo Code: Insert new_value at index in my_list

Removing Elements
Python: my_list.remove(value)
Pseudo Code: Remove value from my_list

Modifying Elements
Python: my_list[index] = new_value
Pseudo Code: my_list[index] <- new_value

Checking Length
Python: length = len(my_list)
Pseudo Code: length <- Length of my_list

Iterating through a List
Python: for item in my_list: 
{ <block of statement> }
Pseudo Code: For each item in my_list: 
{ <block of statement> }




Checking for Existence
Python: if value in my_list:
{ <block of statement> }
Pseudo Code: If value is in my_list: 
{ <block of statement> }

List Slicing
Python: sub_list = my_list[start:end]
Pseudo Code: sub_list <- my_list[start:end]

Hacks

Review each of the following and produce….

  • A list (with user input) using objects with different types and attributes.
  • Create a function that find the maximum and minimum number in a list using iteration