def get_program(self, n, timeout=2.0, max_retries=2):
        """ Get a program from the drive.

        Gets program 'n' from the drive and returns its commands.

        Parameters
        ----------
        n : int
            Which program to get.
        timeout : number, optional
            Optional timeout in seconds to use when reading the
            response. A negative value or ``None`` indicates that the
            an infinite timeout should be used.
        max_retries : int, optional
            Maximum number of retries to do per command in the case of
            errors.

        Returns
        -------
        commands : list of str
            ``list`` of ``str`` commands making up the program. The
            trailing 'END' is removed. Empty if there was an error.

        Notes
        -----
        The command sent to the drive is '!TPROG PROGn'.

        See Also
        --------
        set_program_profile : Sets a program or profile.
        run_program_profile : Runs a program or profile.

        """
        # Send the 'TPROG PROGn' command to read the program.
        response = self.driver.send_command( \
            'TPROG PROG' + str(int(n)), timeout=timeout, \
            immediate=True, max_retries=max_retries)

        # If there was an error, then return empty. Otherwise, return
        # the response lines but strip the leading '*' first and the
        # 'END' at the end of the list.
        if self.driver.command_error(response) \
                or len(response[4]) == 0:
            return []
        else:
            if '*END' in response[4]:
                response[4].remove('*END')
            return [line[1:] for line in response[4]]
def get_program ( self , n , timeout = 2.0 , max_retries = 2 ) : response = self . driver . send_command ( 'TPROG PROG' + str ( int ( n ) ) , timeout = timeout , immediate = True , max_retries = max_retries ) if self . driver . command_error ( response ) or len ( response [ 4 ] ) == 0 : return [ ] else : if '*END' in response [ 4 ] : response [ 4 ] . remove ( '*END' ) return [ line [ 1 : ] for line in response [ 4 ] ]
Get a program from the drive.

        Gets program 'n' from the drive and returns its commands.

        Parameters
        ----------
        n : int
            Which program to get.
        timeout : number, optional
            Optional timeout in seconds to use when reading the
            response. A negative value or ``None`` indicates that the
            an infinite timeout should be used.
        max_retries : int, optional
            Maximum number of retries to do per command in the case of
            errors.

        Returns
        -------
        commands : list of str
            ``list`` of ``str`` commands making up the program. The
            trailing 'END' is removed. Empty if there was an error.

        Notes
        -----
        The command sent to the drive is '!TPROG PROGn'.

        See Also
        --------
        set_program_profile : Sets a program or profile.
        run_program_profile : Runs a program or profile.