Closed
Description
We should really check for valid engine names for the engine
argument to pd.read_table
. An invalid name results in a dubious error to the user:
pd.read_table('', engine='test')
>>> Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/pandas/io/parsers.py", line 646, in parser_f
return _read(filepath_or_buffer, kwds)
File "/usr/lib/python3/dist-packages/pandas/io/parsers.py", line 389, in _read
parser = TextFileReader(filepath_or_buffer, **kwds)
File "/usr/lib/python3/dist-packages/pandas/io/parsers.py", line 730, in __init__
self._make_engine(self.engine)
File "/usr/lib/python3/dist-packages/pandas/io/parsers.py", line 929, in _make_engine
self._engine = klass(self.f, **self.options)
UnboundLocalError: local variable 'klass' referenced before assignment