Python Practice Creating and Using Functions in Python Practice Functions Use an External Function

Gabe Dumbrille
Gabe Dumbrille
2,419 Points

AssertionError: False is not true : Make sure you catch the CommunicationError in a try except block

Still can't figure it out after adding parenthesis absent in last post...

using_a_function.py
"""
This is importing a function named `tweet` from a file
    that we unfortunately don't have access to change.

You use it like so:
>>> tweet("Hello this is my tweet")

If the function cannot connect to Twitter,
    the function will raise a `CommunicationError`
If the message is too long,
    the function will raise a `MessageTooLongError`
"""
from twitter import (
    tweet,
    MessageTooLongError,
    CommunicationError,
)

message = input("What would you like to tweet?  ")

# Your code here
try:
    tweet("hello")
except CommunicationError:
    print("An error occurred attempting to connect to Twitter. Please try again!")

tweet(message)

2 Answers

Shane Smith
Shane Smith
2,726 Points

Try this, it worked for me

message = input("What would you like to tweet?  ")
# Your code here
try:
    tweet(message)
except CommunicationError:
    print("An error occured attempting to connect to Twitter, Please try again!")
except MessageTooLongError as e:
    print("Oh No! Your message was too long ({})".format(e))
Gabe Dumbrille
Gabe Dumbrille
2,419 Points

Thank you! I figured out right before reading this response...I had the "tweet(message)" piece in the wrong spot.

I haven't seen "e" used yet...is that shorthand for "err"?

Thanks again!

Mick Speziale
Mick Speziale
1,602 Points

I completely forgot about using "as". Thank you!