[Pulp-list] Interesting python inspection

Pradeep Kilambi pkilambi at redhat.com
Thu Aug 19 17:23:11 UTC 2010


On 08/19/2010 12:55 PM, Jason Dobies wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 08/19/2010 12:55 PM, Jason Rist wrote:
>    
>> On 08/19/2010 10:28 AM, Jason Dobies wrote:
>>      
>>> PyCharm just flagged the following code with a warning (in particular
>>> the consumerids argument)
>>>
>>> def create(self, id, description, consumerids=[]):
>>>
>>> Here's the warning:
>>>
>>> "This inspection detects when a mutable value as list or dictionary is
>>> detected in a default value for an argument. Default argument values are
>>> evaluated only once at function definition time, which means that
>>> modifying the default value of the argument will affect all subsequent
>>> calls of the function. "
>>>
>>> That's kinda cool, I never saw anything like that before.
>>>
>>>        
>> It knows...
>> _______________________________________________
>> Pulp-list mailing list
>> Pulp-list at redhat.com
>> https://www.redhat.com/mailman/listinfo/pulp-list
>>
>> _______________________________________________
>> Pulp-list mailing list
>> Pulp-list at redhat.com
>> https://www.redhat.com/mailman/listinfo/pulp-list
>>      
> Something else I keep seeing in the code is:
>
> if foo == None:
>
> It's better to just use object reference comparison rather than equality
> when checking for none:
>
> if foo is None:
>    

you don't necessarily need 'is None or == None'. You can jus do:

if not foo:

and that will automatically conclude the same check.





More information about the Pulp-list mailing list