Comment on page
Logical Operators
After working through this lesson, you’ll be able to:
- Write Python code that uses logical operators to connect Boolean expressions.
Write Python code to determine if you and your friend will get a fire emoji.
Ask the user, "Have you snapped with your friend for the past 3 days? ")
- If yes, print "you snapped with your friend"
- If no, print "you have not snapped with your friend"
Ask the user, "Has your friend snapped with you for the past 3 days"
- If yes, print "your friend snapped with you"
- If no, print "your friend has not snapped with you"
If the answer to both questions is yes, then print, you started a Snapstreak!
intro.py
sent = input("Have you snapped with your friend for the past 3 days? ")
if sent == "yes":
print("you snapped with your friend")
elif sent == "no":
print("you have not snapped with your friend")
received = input("Has your friend snapped with you for the past 3 days? ")
if received == "yes":
print("your friend snapped with you")
elif received == "no":
print("your friend has not snapped with you")
if sent == "yes":
if received received == "yes":
print("you started a Snapstreak!")
Logical operators allow you to connect Boolean expressions to create a compound expression.
Operator | Meaning |
and | Connects two Boolean expressions into one compound expression. Both subexpressions must be true for the compound expression to be true. |
or | Connects two Boolean expressions into one compound expression. One or both subexpressions must be true for the compound expression to be true. |
not | Reverses the truth of its operand |
Rewrite the Introductory Problem using the logical and operator. If both conditions are true, print, you started a Snapstreak! Else print, not so friendly yet.
example1.py
sent = input("Have you snapped with your friend for the past 3 days? ")
if sent == "yes":
print("you snapped with your friend")
elif sent == "no":
print("you have not snapped with your friend")
received = input("Has your friend snapped with you for the past 3 days? ")
if received == "yes":
print("your friend snapped with you")
elif received == "no":
print("your friend has not snapped with you")
if sent == "yes" and received == "yes":
print("you started a Snapstreak!")
else:
print("not so friendly yet")
Snapchat decides to change its criteria for creating a Snapstreak. Now only one user has to send a message to the other for three days. Change the code to satisify the new condition.
example2.py
sent = input("Have you snapped with your friend for the past 3 days? ")
if sent == "yes":
print("you snapped with your friend")
elif sent == "no":
print("you have not snapped with your friend")
received = input("Has your friend snapped with you for the past 3 days? ")
if received == "yes":
print("your friend snapped with you")
elif received == "no":
print("your friend has not snapped with you")
if sent == "yes" or received == "yes":
print("you started a Snapstreak!")
else:
print("not so friendly yet")
Hundred emoji. Ask the user:
- how many days in a row have you sent your friend a message?
- how many days in a row has your friend has sent you a message?
If you and your friend have sent a message to each other for more than 100 days in a row, print you receive a hundred emoji. Otherwise, print not there yet.
example3.py
dayssent = int(input("How many days in a row have you sent your friend a message? "))
daysreceived = int(input("How many days in a row has your friend sent you a message? "))
if dayssent >= 100 and daysreceived >= 100:
print("you receive a hundred emoji")
else:
print("not there yet")
Last modified 4yr ago