tac-tics wrote: > dwelch91 wrote: > >>tac-tics wrote: >> >>>I'd say the second one. Empty lists are not false. They are empty. Long >>>live dedicated boolean data types. >>> >> >>Uh, no, empty lists are False in a boolean context: >> >>http://docs.python.org/lib/truth.html >> >>-Don > > > Perhaps I should have specified it like this: > > >>>>empty_list = [] >>>>empty_list is not False > > True > > I'm well aware that both of these snippets does the same thing. I'm > just spouting my opinion that lists and integers are not tests, and in > an ideal world (Java??? X-) if statements support only boolean types. > > DISCLAIMER: I do not promote the use of Java. > You don't promote use of Python either if you deliberately ignore programming paradigms that have stood the test of time. Under what set of rules could it make sense to test a list for equality with a Boolean value (note also that capital "B": the word is based on someone's name).
The if lst: metaphor is so well established as a means of guarding statements that should be executed only when there are elements in the list (or other container, come to that), promoting any other way to perform the test will only lead to confusion: there should be one (and preferably only one) obvious way to do it. regards Steve -- Steve Holden +44 150 684 7255 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://holdenweb.blogspot.com Recent Ramblings http://del.icio.us/steve.holden -- http://mail.python.org/mailman/listinfo/python-list