I don't see any problem with using "list" to refer to any data structure that is functionally equivalent to a list, regardless of implementation. This is hardly unique to Python: Mathematica's List type (despite the Lisp heritage) is also really an array.
You could easily imagine the implementation being changed to something else (say a VList or unrolled linked list) if someone did some benchmarking and it turned out that it made Python programs 5% faster on average. Then the name "array" would no longer be accurate, and neither would "list" in the narrow, pedantic sense. So using the term "list" in a more abstract sense is perfectly reasonable.
The term "list" also has some (tiny) advantages: it's shorter than "array" or "vector", and it's one less technical term for people learning programming (as I understand, this was one of Guido's design goals).
If we're going to talk about inaccurately named data types, let's start with the ubiquitous use of "integer" to refer to bastardized integers modulo 2^32...
You could easily imagine the implementation being changed to something else (say a VList or unrolled linked list) if someone did some benchmarking and it turned out that it made Python programs 5% faster on average. Then the name "array" would no longer be accurate, and neither would "list" in the narrow, pedantic sense. So using the term "list" in a more abstract sense is perfectly reasonable.
The term "list" also has some (tiny) advantages: it's shorter than "array" or "vector", and it's one less technical term for people learning programming (as I understand, this was one of Guido's design goals).
If we're going to talk about inaccurately named data types, let's start with the ubiquitous use of "integer" to refer to bastardized integers modulo 2^32...