# BASIC DATA TYPES


# STRINGS:
# in python, there are certain ways to express information like numbers and words
# to express letters or words use single or double quotation marks around the words.
# If you don't use single or double quotation marks python will assume that you're just writing a variable name
# and will throw an error if that variable doesn't exist
# this data type is called a string

# SIDENOTE: don't use single and double quotation marks in the same file
# or else your code will be ugly and no one will want to be its friend :(

# SIDENOTE: numbers and other symbols can also be in quotes and can be considered letters/words

# EXAMPLES:

"a" # valid way to express the leter a
"my words" # a valid way to express words
'my words' # also a valid way to express words
"my words123 456" # a valid way to express words with some numbers (note: the numbers here are treated as parts of words)

# "my words' # an invalid way to express words
# my words # an invalid way to express words
# "my words # an invalid way to express words

# EXERCISES:

# write 5 strings below and make sure this file still runs


# NUMBERS:
# there isn't any special notation to express numbers, just don't write them in quotes or else they'll
# be considered words/characters

# EXAMPLES:

1 # a valid way to express 1
2394 # a valid way to express 2394

"1" # not an invalid data type, but an invalid way to express a number that is supposed to be used as a number

# EXERCISES:

# write 5 numbers below and make sure this file still runs

# BOOLEANS:
# one of the things python can do is check if something is true or false
# you can also write code that will always be true or false to python by just writing
# True or False (with capital T and F)
# an expression of something being true or false is called a boolean in all programming language
# and it's an important thing to know even though it sounds kind of esoteric

# SIDENOTE: Frue and Talse are not valid booleans

# EXAMPLES:

True # a valid way to express True
False # a valid way to express false

# Talse # an invalid way to express schrödinger's booleans
# Frue # an invalid way to express schrödinger's boolean

# EXERCISES:

# write 5 booleans below and make sure this file still runs

# LISTS(also called arrays in other programming languages):
# lists are pretty self explanatory
# lists can store any and as many data types as you want (they can even store lists)
# you can also add, remove, and get items from a lists
# there's a lot more to lists but writing the data type is pretty easy
# to write a list, write data types inside square brackets "[]" and seperate them with commas

# SIDENOTE: a list of lists is called a 2 dimensional list, a list made of lists that are made of lists is a 3 dimensional list etc..

# EXAMPLES:

["my words", "a", 234, False, True] # a valid list
[] # a valid list
["a"] # a valid lsit
[[1,2,3], ["456", "789"]] # a valid list

# EXERCISES:

# write 5 lists with all of the data types you've learned so far (including lists). Make sure this file still runs

# ENDNOTE:
# these are only the basic datatypes in python. There are a couple other datatypes that aren't included here (mainly dictionaries)
# that you'll discover later
