mixin در پایتون نوعی از وراثت چندگانگیست که در دو موقعیت لزوم استفاده از آن را فراهم می شود :۱- زمانی که بخواهید امکانات زیاد و متنوعی برای کلاس خود بکار بگیرید۲- و زمانی که بخواهید امکان خاصی را از تعداد زیادی کلاس برداشته و بروی آن کار کرده یا توسعه اش دهید
بعنوان مثال ( برای مورد اول ) در werkzeug متدهای Response and Request را در نظر بگیرید :کلاس زیر یک درخواست ساده رو دریافت می نماید
from werkzeug import BaseRequest class Request(BaseRequest): pass
و حالا کلاس زیر می تواند درخواست را دریافت و Header آن را شناسایی نماید
from werkzeug import BaseRequest, AcceptMixin class Request(BaseRequest, AcceptMixin): pass
حالا اگر کلاسی می خواهید که بتواند درخواست را دریافت نموده ، Header, etags, authentication, and useragent را پشتیبانی نماید :
from werkzeug import BaseRequest, AcceptMixin, ETagRequestMixin, UserAgentMixin, AuthorizationMixin class Request(BaseRequest, AcceptMixin, ETagRequestMixin, UserAgentMixin, AuthorizationMixin): pass