2011-10-10 14 views

Odpowiedz

6

Większość wbudowanych typów nie jest bezpośrednio słabych referencyjnych (np. Str, int, float, list, dict, None), a istnieje kilka, które nie mogą nawet zostać wykonane przez podklasy (np. Krotki w CPython).

Niektóre szczegóły dotyczące podstawowej implementacji słabych stron dla kilku wbudowanych typów można znaleźć w this March-2005 python-list post by Raymond Hettinger.

+0

Dzięki. Teraz mogłem zobaczyć powód, dla którego tuple i str nie mogą być słabo wymienione. Co powiesz na listę i dyktowanie? Dlaczego musimy podklasować te typy, aby stworzyć dla nich słabe odniesienie? –

+0

Jeśli wskazówki podane w drugim akapicie nie wystarczą, aby kontynuować, to obawiam się, że nie wiem wystarczająco dużo na temat wewnętrznych elementów Pythona, aby wyjaśnić dalej. Może lepiej byłoby zadać takie pytanie na [liście pythona-dev] (http://mail.python.org/mailman/listinfo/python-dev). Jestem pewien, że jeden z deweloperów Pythona będzie mógł udzielić ci definitywnej odpowiedzi na twoje pytanie. – ekhumoro

+0

Przybył tutaj właśnie teraz, link do wpisu jest uszkodzony. Myślę, że http://mail.python.org/pipermail/python-list/2005-March/346301.html jest jednak. –

0

Domyślam się, że dyktanda i listy używane są wewnętrznie do realizacji słabych stron, więc miałbyś tutaj sytuację z jajkiem i kurczakiem.

Powiązane problemy