class practice with twitter
#class practice questions
#This practice tests class organization and inheritance
class User:
#base is the mother twitter instance
def __init__(self, name):
self.name = name
def __repr__(self):
return "({0})".format(self.name)
class Tweet:
def __init__(self, user, message):
self.user = user
self.message = message
def __repr__(self):
return str(self.user) + "==\"{0}\"".format(self.message)
class Follow:
def __init__(self, follower, user):
self.follower = follower
self.user = user
def __repr__(self):
return str(self.follower) + " --> " + str(self.user)
#all components of the twitter are stored in one class, while other classes
#store specific components
class Twitter:
def __init__(self):
self.users = {}
self.tweets = []
self.follows = []
def __repr__(self):
return "USERS=[{0}]\nTWEETS=[{1}]\nFOLLOWS=[{2}]".format(self.users, self.tweets, self.follows)
def create_follow(self, follower, user):
self.follows.append(Follow(follower, user))
def create_user(self, name):
self.users[name] = User(name)
def create_tweet(self, user, message):
self.tweet.append(Tweet(user, message))