# Lists¶

## 🎨 Arithmetic Operators¶

In [1]:

```
7 + 2
```

Out[1]:

9

In [2]:

```
7 - 2
```

Out[2]:

5

In [3]:

```
7 * 2
```

Out[3]:

14

In [4]:

```
7 ** 2
```

Out[4]:

49

`7 ** 2`

is $ 7 ^ 2 $

In [5]:

```
7 / 2
```

Out[5]:

3.5

In [6]:

```
7 // 2
```

Out[6]:

3

In [7]:

```
7 % 2
```

Out[7]:

1

$\frac{7}{2} = 3r1$

`7 // 2`

gives us the $3$

`7 % 2`

gives us the $1$ (the *remainder*)

## 🎨 Comparisons¶

In [8]:

```
2 > 1
```

Out[8]:

True

In [9]:

```
2 > 2
```

Out[9]:

False

In [10]:

```
2 <= 2
```

Out[10]:

True

In [11]:

```
2 >= 2
```

Out[11]:

True

In [14]:

```
4 == 4
```

Out[14]:

False

In [13]:

```
4 != 6
```

Out[13]:

True

## 🎨 `None`

¶

What is the value of a variable that doesn't have a value?

What does a function return when it doesn't `return`

anything?

In [15]:

```
def no_return():
print('This function doesn\'t return anything.')
value = no_return()
print('the value is:', value)
```

This function doesn't return anything. the value is: None

In [16]:

```
type(value)
```

Out[16]:

NoneType

`None`

is what Python uses to communicate *nothing*.

It's what you use to indicate that you don't have any information.

In [17]:

```
thing = 8
thing is None
```

Out[17]:

False

In [18]:

```
thing = None
thing is None
```

Out[18]:

True

To determine whether a variable is `None`

, use the `is None`

expression.

In [19]:

```
thing = 9
thing is not None
```

Out[19]:

True

To determine whether a variable is *not* `None`

, use the `is not None`

expression.

In [20]:

```
names = []
while True:
name = input("Give me a name: ")
if name == '':
break
names.append(name)
print(names)
print(names)
```

In [21]:

```
names = ['Julia', 'Juan', 'George', 'Gina']
print(names)
```

['Julia', 'Juan', 'George', 'Gina']

In [22]:

```
names = ['Julia', 'Juan', 'George', 'Gina']
while True:
name = input("Give me a name: ")
if name == '':
break
names.append(name)
print(names)
```

## 🎨 `len`

¶

In [23]:

```
fruit = ['apple', 'peach', 'pear', 'açaí']
how_many = len(fruit)
print(how_many)
print(len(fruit))
```

4 4

## 🖌 `for`

¶

In [26]:

```
students = ['Julia', 'Juan', 'George', 'Gina', 'Gina']
for student in students:
print(f"Hello {student}. Welcome to CS 110.")
print(f"I hope you ({student}) have a great day.")
```

In [ ]:

```
%%file for_class/fruit_salad.py
# 🍓 🍎 🥭
```

## 👩🏽🎨 Big and Small¶

Write a program that queries the user for a list of numbers (one number at a time).

Then ask the user what number to use as the boundary between "big" and "small" numbers.

Print `"You have {how_many} numbers:"`

Then print out all the numbers with one of the following comments:

- for "big" numbers say "(big)"
- for "small" numbers say "(small)"

## Key Ideas¶

- Arithmetic operators
- Lists!
`[]`

`.append(...)`

`len`

`for`