your second function is the type of bad code you get from people trying to program python like its c
Absolutely! And the list.pop version is multiple orders of magnitude slower. But I took the prompt to be asking for in-place modification of the existing list. Comprehension does not do that.
Is there a pythonic way to satisfy the prompt? IE without making a new list?