You are on page 1of 12

Ethan Erika T.

Biona (STEM11-L) limited to just computer scientists and


programmers or in their respective work)
EmpTech (Midterm Exam – Reviewer) - A thought process that uses concepts
related to computer science
Module 1: Introduction to Computational Thinking - (or to the task of computation, in general)
- Used in the framing or understanding of a
Source: Introduction to CT pdf problem and in the creation of solutions,
which can be carried out by computers (i.e.
How do we go about defining Computational Thinking? anything or anyone that computes)
 can we say that Computational Thinking is “some  Compressing these statements, we define CT as
thought process that involves or is related to - …a mindset that anyone can use for solving
computers when considering something”? (NO) any problem and that involves framing
these problems and their solutions guided
How about if we consult what the experts in the are have by concepts core to computer science.
to say about the phrase?
 "Computational thinking is not just for other Even Beecher (2017) lists several concepts related to
scientists, it’s for everyone" (Wing, 2006) CT…
 "Computational Thinking is the thought processes  Logical thinking
involved in formulating problems and their  Algorithmic thinking
solutions so that the solutions are represented in  Decomposition
a form that can be effectively carried out by an  Generalization and pattern recognition
information-processing agent" (Cuny et al., 2010)  Modelling
 "[Teaching Computational Thinking] is to teach  Abstraction
[people] how to think like an economist, a  Evaluation
physicist, an artist, and to understand how to use  Data representation
computation to solve their problems, to create,  Critical thinking
and to discover new questions that can fruitfully
 Computer science
be explored." (Hemmendinger, 2010)
 Automation
 "Computational thinking is the process of
 Simulation / visualization
recognising aspects of computation in the world
that surrounds us, and applying tools and
Decomposition
techniques from Computer Science to
o Decomposition advocates for breaking down of
understand and reason about both natural and
artificial systems and processes." (Furber, 2012) big problems into smaller easier to solve tasks
o Decomposition is the idea that a big problem can
 "Computational thinking is an approach to
problem-solving that involves using a set of be broken down into many smaller problems
practices and principles from computer science to o These smaller problems can be broken down
formulate a solution that’s executable by a until they are no longer problems but actual
computer." (Beecher, 2017) tasks to perform

Defining computational thinking


 It doesn’t seem like there’s a consensus even
among experts…
 Hence, we can say with some confidence that
there is no standard definition of CT that can
completely capture its identity
 You see, real-world problems are big
 However, we need a running definition for our
- Big here means that there normally isn't just
course. To do so, we can try to form our own
one tasks to solve the whole problem
definitions from common themes.
- There are numerous tasks, just like in the
- An everyday skill that anyone can use to
problem of cleaning one's room
solve problems in any domain (i.e. not
 Decomposition is subjective to experience
- Someone might think a problem is totally
easy to solve
- Another might find the same problem too
big and would need to further decompose
the problem
 To perform decomposition
- one needs to properly frame the problem
and identify the "main problem”
- Then look at parts of the problem (sub
problems)
- We continue this process over and over until
we have tasks. Algorithmic Thinking
 Decomposition – Eggs Benedict o Algorithmic Thinking advocates for the
How to cook Eggs Benedict? formulation and creation of solutions to be
- How to cook the bacon? defined and sequential
- How to make Hollandaise sauce? o An algorithm is a sequence of instructions that
- How to poach eggs? adheres tto two main principles:
- How to toast muffins? - Steps must be clearly defined and
- How to place everything together? unambiguous (Defined)
- Steps must be with clear start and end
Abstraction points (Sequential)
o Abstraction is about suppression of information,
while retaining important information to the task
at hand.
o Abstraction is a way of expressing an idea in a
specific context while at the same time
suppressing details irrelevant in that context
o Abstraction can also be viewed in the way that
train station maps aren't pictures from Google
Earth, but an abstraction of what one needs to
know
 Algorithmic thinking isn't about creating
algorithms
- You've already been making solutions and
plans and lists of things to do
 Algorithmic thinking states that in the form
creation of plans, one must adhere to the make
up an algorithm
- Defined steps
- Having sequence

Evaluation
o Evaluation is all about determining if a solution is
 You can think of abstraction in terms of layers of good according to some standards
information o Evaluation is the concept of determining if a
- As we go lower, more information is solution is actually a good solution
revealed - But what makes a solution “good”?
- As we go higher, less information is  Beecher (2017) mentions we can ask the
retained following questions:
- Is it correct?
Does it actually solve the problem you set
out to solve?
- Is it efficient? - All four concepts can be applied at any
Does it use resources reasonably? phase in the problem solving process and
- Is it elegant? can be applied together
Is it simple yet effective?  In relation to the previous point, the concept of
- Is it usable? Evaluation can be performed even during
Does it provide a satisfactory way for the decomposition
target audience to use it? - Evaluation is recognizing that a solution is
 Evaluation is heavily dependent on the framing of just a plan and that any plan can be
the problem evaluated -- even w/o concrete
- Each task should be traced back to which implementation.
subproblem they solve  Abstraction is one of the hardest concepts out of
- Each subproblem should eventually trace the four.
back to the main problem being solved - Too abstract a concept might lead to loss of
information, while too little abstract might
Recap lead to an overwhelming amount of
 We defined our own definition of Computational information.
because there’s no standard definition - In relation to our attempt at looking the
 CT defined as “…a mindset that anyone can use many other concepts, abstraction is closely
for solving any problem and that involves related to pattern recognition and
framing these problems and their solutions generalization.
guided by concepts core to computer science.” - Abstraction requires exposure and practice
 Framing problems and creating solutions must be to recognizing patterns and performing
guided by certain Computational Thinking generalizations (hence, their close
concepts: association with each other)
- Decomposition is the idea of breakdown - Pattern recognition is the idea of looking for
down big problems into smaller easier to similarities among data
solve problems - This might include recognizing patterns
- Abstraction is the idea of highlighting among solutions to different sub problems or
important information and removing recognizing important characteristics of a
irrelevant information given situation.
- Algorithmic Thinking is the idea that - Once identified, patterns can generalized
solutions should be defined and have into single concept, which usually makes a
proper sequence solution simpler or aids in coming up with
- Evaluation is the idea of determining how solutions to similar problems.
good a solution is
Source: Computational Thinking... with Jump Shots?
Source: Core Concepts of Computational Thinking
Recap
Clarifications  We tackled the problem taking good jump shots
 These four concepts help further define the using the computational thinking mindset
identify of Computational Thinking  We identified the main problem and broke it down
- I.e. Computational Thinking is a mindset that until we had tasks to perform (instead of
anyone can use for solving any problem and problems to wonder how to solve)
that involves framing these problems and  We then saw how abstraction can help in
their solutions guided by decomposition, understanding a motion tracking (which is what
abstraction, algorithmic thinking, and we need to predict the peak of a jump)
evaluations. (woah mega evaluation right  We evaluated both our manual approach and the
here) computational approach by briefly looking at the
 The four concepts of Computational Thinking are capabilities and limitations of each
not meant to be done in steps.  Lastly, algorithmic thinking is observed not in the
- I.e. Its not a step by step process creation of an algorithm, but in adhering to what
an algorithm should be (having clear and defined 9. One aspect that Algorithmic Thinking advocates
instructions) for is that solutions need to have a clear start;
however, solutions -- in the form of algorithms --
Short Quiz 1 do not need a clear ending.
1. Is a CT concept that highlights that a problem - False
(regardless of size) can be broken down into 10. The question of "Is it correct?" is something that
smaller problems. In turn, these problems can be is asked when looking to evaluate a solution.
broken down further and as these problems are - True
broken down, they may resemble tasks.
- Decomposition Module 2: Decomposition
2. Is a CT concept that deals with understanding the
correctness of a solution and if it addresses the Source: Decomposition for Problem Solving
problem at hand. It also deals with knowing
whether a solution is efficient (i.e. smartly uses "If you can't solve a problem, then there is an easier
resources), elegant (i.e. simplicity over problem you can solve: find it." - George Polya
complexity), and usable (i.e. can be used by the
user and can be implemented by the problem  Decomposition is an approach that seeks to
solver). break a big, complex problem into smaller, easier
- Evaluation to solve problems.
3. Is a CT concept that deals with understanding  These simpler problems or parts may either be
that any process or solution can be represented interrelated or complete independent of each
in the manner of an algorithm -- something that is other.
defined and sequential.  To perform decomposition, one needs to properly
- Algorithmic Thinking frame the problem and identify the "main
4. Is a CT concept that deals with suppressing problem”, and then look at parts and pieces of
information while still retaining relevant the problem (sub problems). If sub-problems are
information to the task at hand. still complex to solve, we continue the process
- Abstraction (recursively)of breaking down each of these sub-
5. In general, there are only four (4) concepts that problems into sub-sub-problems until each sub-
make up Computational Thinking. problem are just simple tasks to do.
- False
6. Computational Thinking -- as a problem solving
mindset -- is only meant to be used by computing
professionals.
- False
7. The Computational Thinking four concepts we'll
highlight in class are meant to executed in the
following order:
Decomposition
Abstraction
Algorithmic Thinking
Evaluation
- False
8. The definition that we came up with for  In most cases, problem solving can be framed as
Computational Thinking -- "...is a mindset that input-process-output.
anyone can use for solving any problem and that - The input could be some data that we need
involves framing these problems and their to process or the available resources that
solutions guided by concepts core to computer can be used to solve the problem.
science." -- was derived from other definitions - The process is the solution to be done in
and may not be the only way to define CT. order to solve a given problem.
- True
- The output is equivalent to our goal or following computation (Assume that the scores for all the
desired outcome that would prove that the items are out of 100 points):
given problem has been solved.

 If the process is too complex, we may apply


decomposition to break it down to smaller,
simpler sub-processes.
- Sub-processes that are needed to be done
in proper order are called sequential sub-
processes. 1) Review the problem carefully and understand
- Sub-processes that can be done what you are asked to do
simultaneously are called parallel sub- Main problem
processes. - We are asked to compute for the final grade
based on the given computation.
Subproblems
- Getting the scores for quiz 1 and quiz 2
- Getting the scores project 1 and project 2
- Getting the final exam score
- Getting the class participation score
- Calculating the final grade using the given
computation
- Displaying the final grade

2) Determine what information is given (input) and


what result must be produced (output)
 Divide-and-conquer is a strategy in
decomposition.
- Many war generals have employed this
strategy in battlefield when outnumbered by
the enemy. That is, when the enemy has
many scattered troops, they gather their full
force and engage the enemy one small
troop at a time. Some politicians also use
this strategy by trying to break the 3) Assign names to each input and output item.
opposition into weaker, smaller parties. - We'll use the same names for our variable
Some marketers also employ the divide- names.
and-conquer approach by producing many
different variants of their products to fit the
different needs of diverse types of
customers.

Source: Applying decomposition to solving word problems


(Programming Example)

Say you are given the problem below and you are asked to
give a Python program as a solution.

Given the scores for the two departmental quizzes, two 4) Determine the manner of processing that must be
projects, final exam, and class participation, write a done on the input data to come up with the
program that will compute for the final grade based on the desired output (i.e., determine what formulas are
needed to manipulate the given data)
them inside a circle to resemble a face".
Having generalized the pattern of all faces,
when someone says "draw a face", typically
we know what they mean. The details of the
Setting up an algorithm
face have been suppressed.
1) Get quiz1 and quiz2 scores.
2) Get proj1 and proj2 scores.
Importance of Abstraction
3) Get finalE score.
 "The essence of abstractions is preserving
4) Get classP score.
information that is relevant in a given context,
5) Calculate the final grade using the formula below
and forgetting information that is irrelevant in that
context." - (Guttag, 2013)
6) Display the final grade finalGrade.  Abstraction is essential to computer scientists.
This is because the real world is quite complex,
Coding and since computer scientists solve problems by
creating solutions using programs, they simply
cannot represent all the details and complexities
of the real world as information on their
computers, so they tend to suppress information
that is unnecessary to the problem at hand.
 As we have discussed prior to this, just because
this concept is used extensively by computer
scientists does not mean it is exclusive to them.
Abstraction is also an essential skill in day to day
problem solving, because, like computers, our
brains cannot store an infinite amount of
information at any given moment. It is oftentimes
easier to only retain necessary information when
problem solving.

Layers of abstraction
e.g. email applications
 The highest level of abstraction is the user
interface level. For users of the app, all they need
to know is that to send an email, they type in their
message and the recipient, and click send.
 The next level of abstraction is the application
level. This is where the software developers lie.
They need to know how the emails are
(We used float() to convert our input to a floating point represented in memory (what data types), as well
since grades usually have decimals.) as the recipient. They also need to interface with
the network so that the data can be sent to the
Module 3: Abstraction appropriate recipient.
 The next level of abstraction is the network or
Source: Abstraction for Problem Solving hardware layer. This is how the bytes of data are
actually routed and transferred across the
Abstraction is the suppression of information that is internet to the recipient.
unnecessary to solving a specific problem. The question now is which level of abstraction is
- Most of the time, when someone would tell necessary? The answer is: it depends. The context of use
you to draw this kind of illustration, they determines the level of abstraction necessary. For the
would just say "can you draw a face?" users of the app, the interface level is the only level of
instead of having to cite all the details like abstraction applicable. For the application development
"please draw two eyes, a smile, and place
team, the application level is the only one they need to  It is possible that your solution is only applicable
know. The lowest level of abstraction is for the network for a certain scenario, but it does not work for
engineers to know. Context is everything in selecting a other scenarios.
level of abstraction. Different contexts require different
information.
Source: Abstraction in Games

 Plenty of games represent some aspect of the Source: Efficiency


real world, especially newer games.
Unfortunately, the real world is complex, so Efficiency states that solutions must use an acceptable
typically, games perform abstraction to simplify amount of resources. Some solutions may work, but
the aspect of the real world they are trying to sometimes they can be impractical due to the factors like,
represent in order to provide a better experience. but are not limited to:
 Creating a game is really a matter of problem
solving, much like our other tasks in this course.  Time - duration of an algorithm’s run time from
The problem that game designers are constantly start to end
trying to solve is "How can we use this - Total time it takes to get ready in the
story/environment/idea to create a fun game morning
experience for our players?". A crucial tool they  Space - amount of memory needed to process
must use, if they intend to create games that (can be analogous to other resources like the
mirror our real world, is abstraction. It is example below)
imperative that they abstract away the - Amount of water needed to take a shower
complexities of the real world to make it simpler and brush your teeth
and more enjoyable for the players of their game
to experience the challenge and story of the There is an advanced way of measuring the complexity of
game that they are playing. an algorithm, but a simple way of doing so is by looking at
 Best case scenario
Module 4: Evaluation  Average case scenario
 Worst case scenario
Source: Evaluation Overview Compare performance of a solution using these scenarios
to determine its effectiveness.
Striking a balance
 Sometimes it very difficult to have a yes as an Source: Elegance
answer for each of the four questions. It is Elegance states that effectiveness and simplicity must be
possible that there is actually no elegant, maximized at the same time (i.e. super duper smart, super
efficient, and perfect solution. There are so many duper simple). It doesn't necessarily mean that it should be
factors to consider in real world problems. It may a work of art, but it has to be simple yet effective.
be a perfect solution for some scenarios, but it  Elegance is hard to measure.
may not be for others. If you try to improve one  Do you prioritize effectiveness over simplicity? Or
aspect, it might compromise the other three simplicity over effectiveness?
aspects.  There is no one answer. You must justify why an
obvious approach isn’t the best approach. Don’t
Source: Correctness make a solution complex unnecessarily.

 Correctness states that there should be an


objective/empirical way of evaluating a solution.
This should stem from the planning phase – the
decomposition and identification of goals. After
knowing what the output is, you should come up
with different scenarios to check if you have the The first algorithm might be the first solution you would
right output. think of. But as you think of the pseudocode, you would
realize the process is complex. If you observe patterns what the sign means and follow them
properly, you might come up with the second algorithm. accordingly
Notice that both algorithms are effective, but the first one is
more complex than the second one. Sequence
 Are music sheets algorithms?
Source: Usability - Yes!
- There is a specific way to interpret playing a
Usability states that an algorithm must also be measured in piece and there is a clear sequence from
terms of how well it can be used by people in order to start to finish
achieve their goals. You might come up with a solution that - Playing the notes out of order would result
is correct, efficient, and elegant. However, if your target in a totally different piece that what was
audience cannot use it, do you think it is a good solution? intended

Measuring usability can be summarized into the following State of an Algorithm


components:  As algorithms need to have sequence, they
 Learnability - easy to learn? inherently can be monitored
 Efficiency - tasks performed quickly by the user? - We refer to this as the state of the algorithm
 Memorability - easy to establish proficiency? - Think of this as something like… “what's
 Errors - can errors be recovered from? happening at a certain point in the
 Satisfaction - pleasant design? algorithm?”
 As an example, imagine you’re playing the
Aside from test cases for correctness, and efficiency tests, following piece…
you should also come up with usability tests. Usability tests - Stop midway and take note of where you
should be about the identified goals. If, say, your goal is to stopped…
create an algorithm for cooking beef nilaga, you should get - At this point, we should be able to
insights from the users of your recipe and investigate why recognize what parts have been executed
they felt a certain way using your recipe. and what parts have yet to be executed

Sometimes, you also don't need to wait for a finished What is a program?
solution, you can ask people what they think of your plan  Looking up the definition of a program, we find it
so you can fix the problems sooner. is described as…
- A set of instructions that a computer follows
Module 5A: Algorithmic Thinking 1 - Intro to Algorithms and in order to perform a particular task
Programming  So… is a program an algorithm?
- Yes!
Source: What is an Algorithm? - A program is a more specific algorithm that
is meant to be run by a computer
Algorithm  A program will strictly flow its instructions step by
 An algorithm is a sequence of instructions that step
adheres tto two main principles: - Unlike a human interpreting statements in
- Steps must be clearly defined and an algorithm, programs don’t question your
unambiguous (Defined) instructions
- Steps must be with clear start and end - However, if there's an error in a program its
points (Sequential) either…
Definiteness (1) The code is typed wrong
 Are road signs algorithms? (2) The logic of the code is wrong
- No! name = input("Hi! What's your name? ")
- However, they are defined rules to follow. print("Hello %s! Nice to meet you" % name)
- When encountering a road sign driving from  Hence, programmers need to carefully
point A to point B, one needs to recognize understand the “language” or instructions we can
use to “talk” to computers
- Which is similar when you’re… - Input – The values you want processed (i.e.
(1) Learning an actual (human) language data)
or… - Process – The processing you do with the
(2) Learning the meaning of road signs cells (formulas, functions, etc.)
or… - Output – The resulting processed values /
(3) Learning how to interpret notes on a charts
music sheet

Lightbot
 Is a simple game that helps in learning about
programming constructs
Source: Introduction to Programming

How do you think Lightbot is related to programming?


I-P-O’s relation to CT
 As mentioned, it can be applied to any problem
→ Post processing: Lightbot
 The better you frame the problem, the better you
 You think of a way to solve a level (using logic)
understand what you must do to solve it
 There are commands (syntax) for your robot to
- It’s also a form of decomposition
execute
 One way to develop this mindset is through
 Your commands are an implementation of your
programming!
idea
- This time, specific to Lightbot
Programming
- When you solve things with Python, its your
 In programing, we’re going to learn about
logic expressed in Python’s language
- Logic formulation
 There are multiple solutions to one problem
- Syntax
 You can identify the goal of the problem in front
 Logic formulation should know no bounds
of you, but how you solve it is up to you
- You can come up with many types of
 Some solutions are confined to the number of
solutions to one problem
boxes available
- But there has to be a way to express your
- Real programs are limited to…?
solution
- Memory and time!
 Syntax then allows you to express your thoughts,
 You won’t feel the limit as much in actual
but it has a couple of limitations
programming, but there are going to be limit to
- You have to follow the rules of a
certain solutions
programming language
- You’re limited by how you can manipulate
→ Input -> Process -> Output
these rules
 Lightbot is a great example of understanding a
 Both logic formulation and syntax work hand in
basic framework for how program work
hand
- Input – the initial values needed for a
- The more you learn about a domain / prog.
program to execute
language, the more you’re able to express
- Process – a program executes based on a
your thoughts
set of instructions
- And this carries over to other problems too
- Output – the result of a program’s execution
 You can frame any problem in an input-process- Why programming helps…
output way
 Computers have tons of commands that you can
 Let’s look at cooking, what would be the give, but they need to be given in a specific
- Input – Ingredients and kitchen equipment manner
- Process – Steps in a recipe
 Not all programs are as adaptive as compared to
- Output – The resulting dish
humans
 How about when planning and creating a
spreadsheet file, what would be the
- If you make a mistake with telling the  Two parts to keep in mind:
direction to somewhere, a human can (1) Text editor area
eventually figure things out - This is where you’ll code
- Computers can’t; They’ll most likely throw (2) Console / terminal area
you an error! - You can code here, but only one line at a
 Although you’ll have more commands in Python time
than in Lightbot, you might still feel limited in - When you run your code from the editor,
what you can create your program will show up here
 Its in understanding the bounds of your domain
(syntax) that you can craft a smart solution Programming
(logic) to a problem  Again, you can run code within the Console /
 After which, you’ll find you can apply a lot of Terminal area, but you’re going to be limited in
programming logic in non-programming terms of writing one command at a time
problems  Hence, let’s stick to the Text Editor area when it
comes to writing our scripts
Programming Languages
 There are many ways to express an algorithm: Output Statement
- Paragraph  We used Python’s output statement: print()
- Bulleted List - Is a function that Python understands as…
- Flowchart “display what the programmer placed in the
 However, these aren’t immediately parenthesis” (not as simple tho)
understandable by a computer; hence we need a - Case sensitive, so Print() won’t be
programming language recognized by Python
 As you should have noticed in the previous
Computer Programs example, each output statement prints on a new
 A programming language is a language that is line
understood both by a programmer and - This can be modified if you feel comfortable
computer doing so
 It is a common language used to write solutions - Read more in Additional Notes on the Print
(called programs) that may be executed by the Statement on Canvas
computer
Variables
Introducing Python  Variables can… vary!
 In this class, we will be using the Python  In terms of programming, think of them as
Programming Language containers that you can place values in
 Python is  In Python, we declare variables as…
(1) High-level - x = 10
- Similar to the English Language (a spoken - name = "Eren Jaeger"
language)  This is called an assignment statement…
(2) General-purpose because we assign!
- No specific use, may be used for dynamic  The = symbol let’s Python know we want to
web, games, etc. assign the left- hand value to the right-hand
(3) Interpreted variable
- Not compiled, meaning not converted into
an executable file Input
(4) Dynamic  We can’t hardcode all possible values for our
- Lines may be executed while the program is program
running, no need to compile the program - Well… we could, but would you want to?
first before code is executed.  Hence, we need a way for the user to give us
input
Programming Environment  Using the input statement is as easy as…
- x = input()

Summary
 What is an algorithm?
- A set of instructions that are clearly defined
and have sequence Or
 What is a program?
- A set of instructions meant to be run by a
computer through some programming
language
 We can also frame problems using the Input ->
Process -> Output
 Programming Concepts (in Python)
- Developer's environment (REPL / IDLE)
- Output statement
- Variables Data Types
- Input statement 1. Strings
 Refers to text data
Module 5B: Algorithmic Thinking 1 - Variables, Data Types - Can be composed of a string of letters,
and Operators numerals (figures that denote a number),
and other special characters
Source: Working with Data (Data Types and Operators) - Example: the name of a game you bought
during a Steam sale
Recall  When writing Strings literally into code,
 Output statement: print(“Hello world”) they are enclosed in quotation marks
 Assignment statement: x = 2 - x = "The quick brown fox jumped over the
 Input statement: name = input(“Enter name: ”) lazy dog"
2. Integers
 Refer to whole numbers
- They are usually used to denote counts of
objects
- Example: the number of games you bought
during the Steam sale
 When written into code, simply write
Data Types the numerals that denote the value of
 Our issue here is that we have an improper data the desired whole number
type - No decimal point
 In certain cases, you’d have to tell Python what - x=4
type of data a specific value is 3. Floats
 We need to tell Python to convert the type of our  Floating point numbers refer to decimal
input to a number numbers
- They are usually used to denote measures
or data that requires precision
- Example: how much money did you spend
during the Steam sale
 When written into code, write the
numerals that denote the value of the
Or desired decimal number with the
decimal point
- x = 50.5 ; x = 1.0
4. Boolean
 Refers to data that can only either be
true or false
- Unlike Strings or numbers with infinite
possible values
- These are often used to denote whether a
state is or is not
- Example: having enough money to buy all
the games you want during the Steam sale
 When written into code, boolean values
are written as True or False Integer division (nearest whole number)
- Note the capitalization!

→ Computers need to know some data’s type in


order to know how to manipulate or treat the
value
→ Should all real-life categories have only data
types?
- Not all the time!
- Your ID number can be either a string or an
integer
- Your age can be either an integer or a
float…. or a string!
→ You just need to follow proper syntax and are in
control of the design and flow of logic of your
solution

Data Type Converters


 We know that Python knows what data type a
value has if its in the proper format
- 4.0 is float
- "hello" is a string
 But again, input() returns a string value all the
time
- Hence, we use data type converts!
 All the data types have their own commands for
converting data

Operators in Python

You might also like