Finding way around ABCs (was What for -- for? (was A bug?))

Ian Kelly ian.g.kelly at gmail.com
Thu Oct 30 13:09:40 EDT 2014


On Thu, Oct 30, 2014 at 11:01 AM, Rustom Mody <rustompmody at gmail.com> wrote:
> On Wednesday, October 29, 2014 11:49:27 AM UTC+5:30, Zachary Ware wrote:
>> On Wed, Oct 29, 2014 at 1:11 AM, Rustom Mody wrote:
>> > On Wednesday, October 29, 2014 11:10:06 AM UTC+5:30, Zachary Ware wrote:
>> >> Of course, that's 3 (progressively shorter) loops to get the names of
>> >> the ABCs of a class compared to 1 (fairly short in the first place)
>> >> loop for a map of relationships to all available ABCs, but optimizing
>> >> such a toy as this would just be an exercise in futility :)
>> >
>> > Not so.
>> >
>> > The charm of introspection is that the introspection
>> > itself can be introspected.
>> > For that to be convincing there needs to be a good combo
>> > of clarity and succinctness.  In particular why not reduce
>> > the two functions to one?
>> >
>> > def get_abc_names(cls):
>> >     return [abc.__name__ for abc in abcs if issubclass(cls,abc)]
>>
>> Well, it depends on what you actually want, the spec has been a bit fuzzy ;)
>
> Thanks for this much -- its helpful.
> Regarding ABCs -- is there a central documentation for them:
>
> "What exactly is a sequence or iterable or etc protocol?"
>
> This information seems to be strewn all over the place but systematically.

Maybe the glossary?

https://docs.python.org/3/glossary.html



More information about the Python-list mailing list