My personal opinion is that Python gave up on "simple and intuitive" a long time ago and people still citing that as a guiding principle of the language really need to sit down and just read the Python documentation again from start to finish, and then ponder for a moment. If they still need a clue, they are invited to the same thing to, say, Python 2.1, and ponder for a few more moments. It clearly isn't and hasn't been for a while. That is not, on its own, a bad thing necessarily. It just means it isn't a guiding principle anymore, or at the very least, it has moved way down the priority list. Plenty of languages have changed their guiding principles over time.
However, this is not an example of that. "if list:" has been the idiomatic Python since inception, and "if len(list):" has been an unnecessary complication for the same period of time. Python's "preferably one way to do it" has never been about "there is literally only one syntactically valid way to do it", for fairly obvious reasons if you think about it.
However, this is not an example of that. "if list:" has been the idiomatic Python since inception, and "if len(list):" has been an unnecessary complication for the same period of time. Python's "preferably one way to do it" has never been about "there is literally only one syntactically valid way to do it", for fairly obvious reasons if you think about it.