Bird
Raised Fist0
Pythonprogramming~10 mins

Type checking using type() in Python - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to check the type of variable x.

Python
x = 10
print(type([1]))
Drag options to blanks, or click blank then click option'
Atype
B10
C'x'
Dx
Attempts:
3 left
💡 Hint
Common Mistakes
Putting the value 10 directly inside type() instead of the variable.
Using quotes around the variable name.
2fill in blank
medium

Complete the code to check if y is of type str.

Python
y = 'hello'
if type(y) == [1]:
    print('y is a string')
Drag options to blanks, or click blank then click option'
Aint
Bstr
Cfloat
Dlist
Attempts:
3 left
💡 Hint
Common Mistakes
Using quotes around 'str' which makes it a string literal, not a type.
Comparing to the wrong type like int or float.
3fill in blank
hard

Fix the error in the code to correctly check if z is a list.

Python
z = [1, 2, 3]
if type(z) [1]:
    print('z is a list')
Drag options to blanks, or click blank then click option'
Alist
Bstr
C== list
D== str
Attempts:
3 left
💡 Hint
Common Mistakes
Using single equals = instead of double equals ==.
Putting the type inside quotes, making it a string.
4fill in blank
hard

Fill both blanks to create a dictionary of variable names and their types for a and b.

Python
a = 5
b = 'text'
types = {'a': [1], 'b': [2]
print(types)
Drag options to blanks, or click blank then click option'
Atype(a)
Btype(b)
Ca
Db
Attempts:
3 left
💡 Hint
Common Mistakes
Putting the variable itself instead of its type.
Mixing up the variables inside type().
5fill in blank
hard

Fill all three blanks to create a dictionary comprehension that maps each word to its type if the word is a string.

Python
items = [123, 'apple', 4.5]
types_dict = { [1] : [2] for [3] in items if type([3]) == str }
print(types_dict)
Drag options to blanks, or click blank then click option'
Aitem
Btype(item)
Dword
Attempts:
3 left
💡 Hint
Common Mistakes
Using different variable names inconsistently.
Not using type() to get the type.

Practice

(1/5)
1. What does the type() function do in Python?
easy
A. It tells you the kind of data stored in a variable.
B. It changes the data type of a variable.
C. It prints the value of a variable.
D. It deletes a variable from memory.

Solution

  1. Step 1: Understand the purpose of type()

    The type() function returns the data type of the given variable or value.
  2. Step 2: Compare options with the function's purpose

    Only It tells you the kind of data stored in a variable. correctly states that type() tells the kind of data stored in a variable.
  3. Final Answer:

    It tells you the kind of data stored in a variable. -> Option A
  4. Quick Check:

    type() returns data type [OK]
Hint: Remember: type() shows data kind, not value or change [OK]
Common Mistakes:
  • Thinking type() changes the variable's type
  • Confusing type() with print()
  • Assuming type() deletes variables
2. Which of the following is the correct syntax to check the type of variable x?
easy
A. type x
B. type[x]
C. type(x)
D. check_type(x)

Solution

  1. Step 1: Recall the syntax of the type() function

    The correct syntax uses parentheses around the variable: type(x).
  2. Step 2: Evaluate each option

    type(x) matches the correct syntax. Options A and B use wrong brackets or missing parentheses. check_type(x) is not a valid Python function.
  3. Final Answer:

    type(x) -> Option C
  4. Quick Check:

    Use parentheses with type() [OK]
Hint: Use parentheses with functions like type() [OK]
Common Mistakes:
  • Using square brackets instead of parentheses
  • Omitting parentheses
  • Using non-existent functions like check_type()
3. What will be the output of this code?
value = 3.14
print(type(value))
medium
A. <class 'float'>
B. <class 'int'>
C. <class 'str'>
D. Error

Solution

  1. Step 1: Identify the data type of value

    The variable value is assigned 3.14, which is a decimal number, so its type is float.
  2. Step 2: Understand what print(type(value)) outputs

    The type() function returns <class 'float'> for a float value, which is printed.
  3. Final Answer:

    <class 'float'> -> Option A
  4. Quick Check:

    3.14 is float type [OK]
Hint: Decimals are float type in Python [OK]
Common Mistakes:
  • Confusing float with int
  • Expecting string output
  • Thinking it causes an error
4. Find the error in this code snippet:
my_var = 'hello'
if type(my_var) == str:
print('It is a string')
medium
A. Missing colon after if statement
B. Indentation error in print statement
C. Variable name is invalid
D. Incorrect use of type() function

Solution

  1. Step 1: Check the if statement syntax

    The if statement has a colon and uses type() correctly, so no error there.
  2. Step 2: Check indentation of the print statement

    In Python, the code inside if must be indented. Here, print is not indented, causing an indentation error.
  3. Final Answer:

    Indentation error in print statement -> Option B
  4. Quick Check:

    Indent inside if blocks [OK]
Hint: Indent code inside if statements [OK]
Common Mistakes:
  • Forgetting to indent after if
  • Misusing type() comparison
  • Missing colon after if
5. You want to write a function that returns True if the input is an integer or a float, and False otherwise. Which code correctly uses type() to do this?
hard
A. def check_num(x): return type(x) == int and float
B. def check_num(x): return type(x) == int or float
C. def check_num(x): return type(x) == 'int' or 'float'
D. def check_num(x): return type(x) in [int, float]

Solution

  1. Step 1: Understand the goal

    The function should return True if x is either int or float.
  2. Step 2: Analyze each option's correctness

    def check_num(x): return type(x) == int or float uses or float incorrectly, always returning truthy. def check_num(x): return type(x) in [int, float] uses in to check membership in a list of types, which is concise and correct. def check_num(x): return type(x) == 'int' or 'float' compares type to strings, which is wrong. def check_num(x): return type(x) == int and float uses and incorrectly, only detecting ints.
  3. Final Answer:

    def check_num(x): return type(x) in [int, float] -> Option D
  4. Quick Check:

    Use in to check multiple types [OK]
Hint: Use 'type(x) in [int, float]' for multiple types [OK]
Common Mistakes:
  • Comparing type to string names
  • Using 'and' instead of 'or' or 'in'
  • Using incomplete logic like '== int or float'