title: Classes with attributes but no methods
body: <p>I am a beginner, but I am trying to implement a board game (Orleans) in python. I have created a class for the game state, and a class for each player. I had thought about creating a class for each type of action space, and creating an instance of the action space for each player since each player has a common set of action spaces. Each of these action space classes have some attributes, normally set in an <code>__init__()</code> method. However they have no other methods. Is this a good use of classes, or should I just change the code to work with lots of separate variables instead? The reason I made them classes was so that the naming of the variables would be more intuitive. The code below gives an example of the player class and two of the action space classes:</p>
  
  <pre><code>class Player:
  
      def __init__(self, start_characters, name):
          // other attributes
          self.farmhouse = Farmhouse()
          self.village = Village()
  
  class Farmhouse:
  
      def __init__(self):
          self.boatman = False
          self.craftsman = False
  
  class Village:
  
      def __init__(self):
          self.farmer = False
          self.boatman = False
          self.craftsman = False
  </code></pre>
  
  <p>The game state class will then have functions that will take a player instance as an argument, testing whether an action space has each of the appropriate requirements to trigger that action.</p>