See the collections.abc module. Of the abstract base classes listed there, list in Python implements Iterable , Container , Sized , Sequence and MutableSequence . Now of these, Iterable , Sequence and MutableSequence could be accidentally called list-like.
However, I would understand that the term list-like means that it is MutableSequence - it has at least the __getitem__ , __setitem__ , __delitem__ and __len__ , expecting it to also have the mixin methods mentioned in the documentation, such as append .
If there is no need for __setitem__ and __delitem__ , then you should call the sequence instead - the assumption is that if something accepts the sequence, it should not be mutable, thus str , bytes , tuple , etc. also work there.
Your two links emphasize the term's ambiguity:
The plotly API requires list-like objects to be serialized into a JSON array by the internal PlotlyJSONEncoder , which delegates most of the Python coding to JSONEncoder . However, the latter encodes only tuple and list (and subclasses) to the JSON array; thus, a list , a tuple or subclasses is used here. A custom sequence object that is not a subclass will result in a TypeError: [...] is not JSON serializable .
The unzip recipe you are associated with requires an object that behaves like a Sequence (volatility is not required), so tuple or str , or any custom object that implements Sequence , will do there.
TL; DR list-like is an undefined term. Instead, it is preferable to use the terms iterative, sequence and mutable sequence, now that they are defined in collections.abc .