On 10/10/2013 9:33 AM, Ethan Furman wrote:

On 10/10/2013 12:43 AM, Terry Reedy wrote:

On 10/10/2013 2:45 AM, Chris Angelico wrote:
first_element = some_list[0]    # Oops, may crash

some_list[0:1] always works, and sometimes is usable, but you still
cannot index the slice.

Not if some_list is None, False, or another non-indexable type.

Did you really not understand that some_list is intended to be a list? Just like my_string, for instance, would be a string? Chris's statement further specifies some_list as a list that is expected to not be empty, but might be -- so one has to guard against the possibility.

The trick of slicing instead of indexing in this context is not obvious to everyone learning Python. Most other languages only have indexing. I learned the trick years ago when someone posted it on this list.

--
Terry Jan Reedy

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to