from abc import ABCMeta, abstractproperty

class Card(metaclass=ABCMeta):

    def __init__(self, suit, rank):
        self._rank = rank
        self._suit = suit
        self._value = None

    def __str__(self):
        return f"{self._rank} of {self._suit}"

    @property
    def rank(self):
        return self._rank

    @property
    def suit(self):
        return self._suit

    @abstractproperty
    def value(self):
        """ Returns the value of the card used for scoring the game """

from abc import ABCMeta, abstractproperty

class Card(metaclass=ABCMeta):

    def __init__(self, suit, rank):
        self._rank = rank
        self._suit = suit
        self._value = None

    def __str__(self):
        # return f"{self.rank} of {self.suit}"
        return "{0} of {1}".format(self.rank, self.suit)

    @property
    def rank(self):
        return self._rank

    @property
    def suit(self):
        return self._suit

    @abstractproperty
    def value(self):
        """ Returns the value of the card used for scoring the game """

Switch to pre-python 3.6 string formatting for Codeship
Switch to pre-python 3.6 string formatting for Codeship

  from abc import ABCMeta, abstractproperty
  
  class Card(metaclass=ABCMeta):
  
      def __init__(self, suit, rank):
          self._rank = rank
          self._suit = suit
          self._value = None
  
      def __str__(self):
-         return f"{self._rank} of {self._suit}"
+         # return f"{self.rank} of {self.suit}"
+         return "{0} of {1}".format(self.rank, self.suit)
  
      @property
      def rank(self):
          return self._rank
  
      @property
      def suit(self):
          return self._suit
  
      @abstractproperty
      def value(self):
          """ Returns the value of the card used for scoring the game """
  
Switch to pre-python 3.6 string formatting for Codeship
## Code Before:
from abc import ABCMeta, abstractproperty

class Card(metaclass=ABCMeta):

    def __init__(self, suit, rank):
        self._rank = rank
        self._suit = suit
        self._value = None

    def __str__(self):
        return f"{self._rank} of {self._suit}"

    @property
    def rank(self):
        return self._rank

    @property
    def suit(self):
        return self._suit

    @abstractproperty
    def value(self):
        """ Returns the value of the card used for scoring the game """

## Instruction:
Switch to pre-python 3.6 string formatting for Codeship
## Code After:
from abc import ABCMeta, abstractproperty

class Card(metaclass=ABCMeta):

    def __init__(self, suit, rank):
        self._rank = rank
        self._suit = suit
        self._value = None

    def __str__(self):
        # return f"{self.rank} of {self.suit}"
        return "{0} of {1}".format(self.rank, self.suit)

    @property
    def rank(self):
        return self._rank

    @property
    def suit(self):
        return self._suit

    @abstractproperty
    def value(self):
        """ Returns the value of the card used for scoring the game """
