input: Write a function to implement a linked list using classes in Python. Create a `Node` class to represent each node in the linked list and a `LinkedList` class to represent the entire list. The `LinkedList` class should have a method `print_list` which prints the data of each node in the list. Create a linked list with nodes having values 1, 2, and 3, and then print the linked list to demonstrate the implementation. If the linked list is empty, print an appropriate message.
  
  
  class Node:
      """Node class to represent the node in a linked list"""
      def __init__(self, data):
          self.data = data
          self.next = None
  
  class LinkedList:
      """LinkedList class to represent the entire linked list"""
      def __init__(self):
          self.head = None
      
      def print_list(self):
          node = self.head
          while(node):
              print(node.data)
              node = node.next
          if not self.head:
              print("The linked list is empty.")
  
  # Creating a linked list 
  linked_list = LinkedList()
  
  # Creating the nodes
  node1 = Node(1)
  node2 = Node(2)
  node3 = Node(3)
  
  # Linking the nodes
  linked_list.head = node1
  node1.next = node2
  node2.next = node3
  
  # Printing the linked list
  linked_list.print_list()
  
  
  assert linked_list.print_list() == None
  
  The linked list will print:
  1
  2
  3
output: 
  def print_list(self):
      node = self.head
      while(node):
          print(node.data)
          node = node.next
      if not self.head:
          print("The linked list is empty.")
  