Calls our PlayerList class to get a full list of players and then returns
    just an id if specified or the full row of player information

    Args:
        :first_name: First name of the player
        :last_name: Last name of the player
        (this is None if the player only has first name [Nene])
        :only_current: Only wants the current list of players
        :just_id: Only wants the id of the player

    Returns:
        Either the ID or full row of information of the player inputted

    Raises:
        :PlayerNotFoundException::

def get_player(first_name,
               last_name=None,
               season=constants.CURRENT_SEASON,
               only_current=0,
               just_id=True):
    """
    Calls our PlayerList class to get a full list of players and then returns
    just an id if specified or the full row of player information

    Args:
        :first_name: First name of the player
        :last_name: Last name of the player
        (this is None if the player only has first name [Nene])
        :only_current: Only wants the current list of players
        :just_id: Only wants the id of the player

    Returns:
        Either the ID or full row of information of the player inputted

    Raises:
        :PlayerNotFoundException::
    """
    if last_name is None:
        name = first_name.lower()
    else:
        name = '{}, {}'.format(last_name, first_name).lower()
    pl = PlayerList(season=season, only_current=only_current).info()
    hdr = 'DISPLAY_LAST_COMMA_FIRST'
    if HAS_PANDAS:
        item = pl[pl.DISPLAY_LAST_COMMA_FIRST.str.lower() == name]
    else:
        item = next(plyr for plyr in pl if str(plyr[hdr]).lower() == name)
    if len(item) == 0:
        raise PlayerNotFoundException
    elif just_id:
        return item['PERSON_ID']
    else:
        return item