COMPAT: Consider Python 2.x tarfiles file-like
`Tarfile.ExFileObject` has no `next` method in Python 2.x, making it an invalid file-like object in `read_csv`. However, they can be read in just fine, meaning our check is too strict for file-like. This commit relaxes
the check to just look for the `__iter__` attribute.

Closes #16530.