[Python-ideas] Operator for inserting an element into a list
Terry Reedy
tjreedy at udel.edu
Fri Jun 15 21:15:19 EDT 2018
On 6/15/2018 8:42 PM, Greg Ewing wrote:
> Mikhail V wrote:
>> It s just very uncommon to see standalone statements like:
>> x.method()
>>
>> for me it came into habit to think that it lacks the left-hand part
>> and =.
>
> You must be looking at a very limited and non-typical
> corpus of Python code. Mutating method calls are
> extremely common in most Python code I've seen.
>
> You seem to be trying to reason about Python as though
> it were intended to be used in a functional style, but
> it's not. Making guesses about it based on how something
> would be done in a functinal language will get you
> nowhere.
>
> > I am not sure about x.method() form - was it meant to hint to the user
>> about anything? It seemed to me so when I started to learn Python, but
>> its not.
>
> The fact that something is a method does not, and was never
> intended to, imply anytbing about whether it is mutating.
>
> However, there *is* a fairly easy way to tell, most of
> the time, when you're *reading* code. There's a convention
> that mutating methods don't return anything other than
> None, so mutating method calls reveal themselves by the
> fact that the result is not used.
>
> Conversely, a method call whose result *is* used is most
> likely non-mutating. (It's possible that it could both
> return a value and have a side effect, but that's frowned
> upon,
Except for set/list.pop and dict.popitem.
and you'll pretty much never see it in any builtin
> or stdlib API.)
>
> As for writing code, you just have to rely on memory and
> documentation, just like you do with most aspects of any
> language and its libraries.
>
>> _______________________________________________
>> Python-ideas mailing list
>> Python-ideas at python.org
>> https://mail.python.org/mailman/listinfo/python-ideas
>> Code of Conduct: http://python.org/psf/codeofconduct/
> _______________________________________________
> Python-ideas mailing list
> Python-ideas at python.org
> https://mail.python.org/mailman/listinfo/python-ideas
> Code of Conduct: http://python.org/psf/codeofconduct/
>
--
Terry Jan Reedy
More information about the Python-ideas
mailing list