[Tutor] Do _all_ Python builtin methods/functions return "None" IF ...

boB Stepp robertvstepp at gmail.com
Fri Jan 26 21:56:31 EST 2018


... they are not designed to explicitly return something else?

The reason I ask is that I almost fell into the following trap:

<GCE trap>
py3: a_lst = [0, 1, 2]
py3: b_lst = a_lst.append(3)
py3: a_lst, b_lst
([0, 1, 2, 3], None)

Instead of "None" I was expecting "[0, 1, 2, 3]".  Obviously I have a
GCE (Gross Conceptual Error).
</GCE trap>

I almost sent the above as my question, but then I realized (Finally!)
that lst.append() performs an append operation on lst and returns
None.  Just like print() returns None.

So my actual question is:  For these types of methods/functions, is
Python Both versions 2 and 3) consistent throughout and *always*
returns None?

TIA!

-- 
boB


More information about the Tutor mailing list