Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
40 views

00-Python Object and Data Structure Basics

python
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views

00-Python Object and Data Structure Basics

python
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 58

Python Object and

Data Structure Basics


Basic Data Types
Complete Python 3 Bootcamp

● In this section of the course we will cover the key data


types in Python.
● These are your basic building blocks when
constructing larger pieces of code.
● Let’s quickly discuss all of the possible data types,
then we’ll have lectures that go into more detail about
each one!
Complete Python 3 Bootcamp
Name Type Description

Integers int Whole numbers, such as: 3 300 200

Floating point float Numbers with a decimal point: 2.3 4.6 100.0

Strings str Ordered sequence of characters: "hello" 'Sammy' "2000" " 楽しい "

Lists list Ordered sequence of objects: [10,"hello",200.3]

Dictionaries dict Unordered Key:Value pairs: {"mykey" : "value" , "name" : "Frankie"}

Tuples tup Ordered immutable sequence of objects: (10,"hello",200.3)

Sets set Unordered collection of unique objects: {"a","b"}

Booleans bool Logical value indicating True or False


Complete Python 3 Bootcamp
Name Type Description

Integers int Whole numbers, such as: 3 300 200

Floating point float Numbers with a decimal point: 2.3 4.6 100.0

Strings str Ordered sequence of characters: "hello" 'Sammy' "2000" " 楽しい "

Lists list Ordered sequence of objects: [10,"hello",200.3]

Dictionaries dict Unordered Key:Value pairs: {"mykey" : "value" , "name" : "Frankie"}

Tuples tup Ordered immutable sequence of objects: (10,"hello",200.3)

Sets set Unordered collection of unique objects: {"a","b"}

Booleans bool Logical value indicating True or False


Complete Python 3 Bootcamp
Name Type Description

Integers int Whole numbers, such as: 3 300 200

Floating point float Numbers with a decimal point: 2.3 4.6 100.0

Strings str Ordered sequence of characters: "hello" 'Sammy' "2000" " 楽しい "

Lists list Ordered sequence of objects: [10,"hello",200.3]

Dictionaries dict Unordered Key:Value pairs: {"mykey" : "value" , "name" : "Frankie"}

Tuples tup Ordered immutable sequence of objects: (10,"hello",200.3)

Sets set Unordered collection of unique objects: {"a","b"}

Booleans bool Logical value indicating True or False


Complete Python 3 Bootcamp
Name Type Description

Integers int Whole numbers, such as: 3 300 200

Floating point float Numbers with a decimal point: 2.3 4.6 100.0

Strings str Ordered sequence of characters: "hello" 'Sammy' "2000" " 楽しい "

Lists list Ordered sequence of objects: [10,"hello",200.3]

Dictionaries dict Unordered Key:Value pairs: {"mykey" : "value" , "name" : "Frankie"}

Tuples tup Ordered immutable sequence of objects: (10,"hello",200.3)

Sets set Unordered collection of unique objects: {"a","b"}

Booleans bool Logical value indicating True or False


Complete Python 3 Bootcamp
Name Type Description

Integers int Whole numbers, such as: 3 300 200

Floating point float Numbers with a decimal point: 2.3 4.6 100.0

Strings str Ordered sequence of characters: "hello" 'Sammy' "2000" " 楽しい "

Lists list Ordered sequence of objects: [10,"hello",200.3]

Dictionaries dict Unordered Key:Value pairs: {"mykey" : "value" , "name" : "Frankie"}

Tuples tup Ordered immutable sequence of objects: (10,"hello",200.3)

Sets set Unordered collection of unique objects: {"a","b"}

Booleans bool Logical value indicating True or False


Complete Python 3 Bootcamp
Name Type Description

Integers int Whole numbers, such as: 3 300 200

Floating point float Numbers with a decimal point: 2.3 4.6 100.0

Strings str Ordered sequence of characters: "hello" 'Sammy' "2000" " 楽しい "

Lists list Ordered sequence of objects: [10,"hello",200.3]

Dictionaries dict Unordered Key:Value pairs: {"mykey" : "value" , "name" : "Frankie"}

Tuples tup Ordered immutable sequence of objects: (10,"hello",200.3)

Sets set Unordered collection of unique objects: {"a","b"}

Booleans bool Logical value indicating True or False


Complete Python 3 Bootcamp
Name Type Description

Integers int Whole numbers, such as: 3 300 200

Floating point float Numbers with a decimal point: 2.3 4.6 100.0

Strings str Ordered sequence of characters: "hello" 'Sammy' "2000" " 楽しい "

Lists list Ordered sequence of objects: [10,"hello",200.3]

Dictionaries dict Unordered Key:Value pairs: {"mykey" : "value" , "name" : "Frankie"}

Tuples tup Ordered immutable sequence of objects: (10,"hello",200.3)

Sets set Unordered collection of unique objects: {"a","b"}

Booleans bool Logical value indicating True or False


Complete Python 3 Bootcamp
Name Type Description

Integers int Whole numbers, such as: 3 300 200

Floating point float Numbers with a decimal point: 2.3 4.6 100.0

Strings str Ordered sequence of characters: "hello" 'Sammy' "2000" " 楽しい "

Lists list Ordered sequence of objects: [10,"hello",200.3]

Dictionaries dict Unordered Key:Value pairs: {"mykey" : "value" , "name" : "Frankie"}

Tuples tup Ordered immutable sequence of objects: (10,"hello",200.3)

Sets set Unordered collection of unique objects: {"a","b"}

Booleans bool Logical value indicating True or False


Complete Python 3 Bootcamp
Name Type Description

Integers int Whole numbers, such as: 3 300 200

Floating point float Numbers with a decimal point: 2.3 4.6 100.0

Strings str Ordered sequence of characters: "hello" 'Sammy' "2000" " 楽しい "

Lists list Ordered sequence of objects: [10,"hello",200.3]

Dictionaries dict Unordered Key:Value pairs: {"mykey" : "value" , "name" : "Frankie"}

Tuples tup Ordered immutable sequence of objects: (10,"hello",200.3)

Sets set Unordered collection of unique objects: {"a","b"}

Booleans bool Logical value indicating True or False


Let’s get started!
Numbers
Complete Python 3 Bootcamp

● There are two main number types we will work with:


○ Integers which are whole numbers.
○ Floating Point numbers which are numbers with
a decimal.
● Let’s explore basic math with Python!
● We will also discuss how to create variables and
assign them values.
Variable Assignments
Complete Python 3 Bootcamp

● We just saw how to work with numbers, but what do


these numbers represent?
● It would be nice to assign these data types a variable
name to easily reference them later on in our code!
● For example:
○ my_dogs = 2
Complete Python 3 Bootcamp

● Rules for variable names


○ Names can not start with a number.
○ There can be no spaces in the name, use _ instead.
○ Can't use any of these symbols :'",<>/?|\()!@#$
%^&*~-+
Complete Python 3 Bootcamp

● Rules for variable names


○ It's considered best practice (PEP8) that names are
lowercase.
○ Avoid using words that have special meaning in
Python like "list" and "str"
Complete Python 3 Bootcamp

● Python uses Dynamic Typing


● This means you can reassign variables to different data
types.
● This makes Python very flexible in assigning data
types, this is different than other languages that are
“Statically-Typed”
Complete Python 3 Bootcamp

my_dogs = 2

my_dogs = [ “Sammy” , “Frankie” ]


This is okay in
Python!
Complete Python 3 Bootcamp

my_dogs = 2

my_dogs = [ “Sammy” , “Frankie” ]


ERROR
in other
Languages!
Complete Python 3 Bootcamp

int my_dog = 1;

my_dog = “Sammy” ; //RESULTS IN ERROR

Example of Static Typing


(C++)
Complete Python 3 Bootcamp

● Pros of Dynamic Typing:


○ Very easy to work with
○ Faster development time
● Cons of Dynamic Typing:
○ May result in bugs for unexpected data types!
○ You need to be aware of type()
Let’s explore these concepts!
Strings
Complete Python 3 Bootcamp

● Strings are sequences of characters, using the syntax of


either single quotes or double quotes:
○ 'hello'
○ "Hello"
○ " I don't do that "
Complete Python 3 Bootcamp

● Because strings are ordered sequences it means we


can using indexing and slicing to grab sub-sections of
the string.
● Indexing notation uses [ ] notation after the string (or
variable assigned the string).
● Indexing allows you to grab a single character from the
string...
Complete Python 3 Bootcamp

● These actions use [ ] square brackets and a number


index to indicate positions of what you wish to grab.
Character : h e l l o
Index : 0 1 2 3 4
Complete Python 3 Bootcamp

● These actions use [ ] square brackets and a number


index to indicate positions of what you wish to grab.
Character : h e l l o
Index : 0 1 2 3 4
Reverse Index: 0 -4 -3 -2 -1
Complete Python 3 Bootcamp

● Slicing allows you to grab a subsection of multiple


characters, a “slice” of the string.
● This has the following syntax:
○ [start:stop:step]
● start is a numerical index for the slice start
Complete Python 3 Bootcamp

● Slicing allows you to grab a subsection of multiple


characters, a “slice” of the string.
● This has the following syntax:
○ [start:stop:step]
● start is a numerical index for the slice start
● stop is the index you will go up to (but not include)
● step is the size of the “jump” you take.
Let’s explore these concepts!
String Indexing
and Slicing
String Properties
and Methods
String Formatting
for Printing
Complete Python 3 Bootcamp

● Often you will want to “inject” a variable into your


string for printing. For example:
○ my_name = “Jose”
○ print(“Hello ” + my_name)
● There are multiple ways to format strings for printing
variables in them.
● This is known as string interpolation.
Complete Python 3 Bootcamp

● Let’s explore two methods for this:


○ .format() method
○ f-strings (formatted string literals)
Lists
Complete Python 3 Bootcamp

● Lists are ordered sequences that can hold a variety of


object types.
● They use [] brackets and commas to separate objects in
the list.
○ [1,2,3,4,5]
● Lists support indexing and slicing. Lists can be nested
and also have a variety of useful methods that can be
called off of them.
Dictionaries
Complete Python 3 Bootcamp

● Dictionaries are unordered mappings for storing


objects. Previously we saw how lists store objects in an
ordered sequence, dictionaries use a key-value pairing
instead.
● This key-value pair allows users to quickly grab
objects without needing to know an index location.
Complete Python 3 Bootcamp

● Dictionaries use curly braces and colons to signify the


keys and their associated values.
{'key1':'value1','key2':'value2'}
● So when to choose a list and when to choose a
dictionary?
Complete Python 3 Bootcamp

● Dictionaries: Objects retrieved by key name.


Unordered and can not be sorted.
● Lists: Objects retrieved by location.
Ordered Sequence can be indexed or sliced.
Tuples
Complete Python 3 Bootcamp

Tuples are very similar to lists. However they have one


key difference - immutability.
Once an element is inside a tuple, it can not be reassigned.
Tuples use parenthesis: (1,2,3)
Sets
Complete Python 3 Bootcamp

Sets are unordered collections of unique elements.


Meaning there can only be one representative of the same
object.
Let’s see some examples!
Booleans
Complete Python 3 Bootcamp

Booleans are operators that allow you to convey True or


False statements.
These are very important later on when we deal with
control flow and logic!
Files
Complete Python 3 Bootcamp

Before we finish this section, let’s quickly go over how to


perform simple I/O with basic .txt files.
We’ll also discuss file paths on your computer.
Let’s get started!
Objects and
Data Structures
Assessment Test
Complete Python 3 Bootcamp

Let’s have a quick overview of your first test.


You can download the notebooks from GitHub or as a zip
file from the Course Overview Lecture.
Objects and
Data Structures
Assessment Test
SOLUTIONS
Complete Python 3 Bootcamp

● Numbers: Store numerical information and come in


two forms:
○ Integers - Whole Numbers
○ Floating Point - Numbers with a decimal
Complete Python 3 Bootcamp

● Strings: Ordered sequence of characters


● Lists: Ordered sequence of objects (mutable)
● Tuples: Ordered sequence of objects (immutable)
● Dictionary: Key-Value pairing that is unordered.
Python Documentation

You might also like