Skip to content

Aug 28: Types, Formatted Strings

Learning Objectives

After today's class, you should be able to:

  • Create email filters that move unwanted messages into a folder.
  • Explain differences between integer and floating-point numbers.
  • Write an f-string with multiple expressions and format specifiers.

HW1 Debrief

[15 min]

Are you tired of getting emails from Gradescope?

Some highlights:

  • Inputting an integer: int(input())
  • Escape sequences: \t, \", \\
  • Separate calculations and output

Options at the end of print():

  • sep= separator (default: space)
  • end= ending (default: newline)
print("Today is Monday.")
print("Monday string beans.")

print("Today", "is", "Monday")
print("Today", "is", "Monday", sep="...")

print("Today is Monday, ", end="")
print("Monday string beans.")

print("Today", "is", "Monday", sep="? ", end="!!")
print("Monday string beans.")

Mini Activity

[15 min]

  • Boolean Values
    • If you are absent today, complete this activity at home
    • Bring your completed activity to class or office hours

Sample code:

integer = 3
type(integer)
type("integer")
pi = 3.1415
type(pi)
word = str(pi)
word
number = float(word)
print(word * 2)
print(number * 2)
print(word + 2)
print(number + 2)
euler = 2.7182
int(euler)
round(euler)

F-Strings

[15 min]

Example program from the front page:

welcome.py
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
"""Display a welcome message for the website.

Author: Chris Mayfield
Version: 08/21/2024
"""

course = input("Enter the course: ")
semester = input("Enter the semester: ")

print(f"Welcome to {course}, {semester}!")

Example format specifiers (after the colon):

numbers.py
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
"""Example format specifications using f-strings.

Author: Chris Mayfield
Version: 08/28/2024
"""

number = int(input("Please enter an integer: "))

print()
print(f"In decimal (base 10), the number is {number:d}.")
print(f"In binary (base 2), the number is {number:b}.")
print(f"In hexadecimal (base 16), the number is {number:x}.")
print()

number = int(input("Integer between 0 and 99: "))

print()
print(f"Five chars wide, padded with spaces: {number:5d}")
print(f"                  padded with zeros: {number:05d}")
print()

number = int(input("Enter a 7+ digit integer: "))

print()
print(f"With comma separators: {number:,d}")
print()

number = float(input("Enter a floating-point number: "))

print()
print(f"In exponent notation, the number is {number:e}.")
print(f"In fixed-point notation, the number is {number:f}.")
print(f"Rounded to two decimal places: {number:.2f}")
print()

Exercise

Rewrite HW1.4 Bits n' Bytes using an f-string.

Reminders

[5 min]

  • Due Tonight
  • Read Ch 2 – ideally:
    • 1st half before Friday
    • 2nd half before Monday
  • Submit HW 2 – ideally:
    • 1 and 2 before Friday
    • 3 and 4 before Monday