python-internals
Jak działa dekorator @ property w Pythonie?
Chciałbym zrozumieć, jak działa Wbudowana Funkcja property. Myli mnie to, że property może być również używany jako dekorator ... x = value
@x.deleter
def x(self):
del self._x
Jak powstają w tym przypadku dekoratory x.setter i x.deleter?
Czy statyczne zmienne klas są możliwe?
Czy możliwe jest posiadanie statycznych zmiennych klas lub metod w Pythonie? Jaka składnia jest wymagana, aby to zrobić?
Jak działa dekorator @ property?
Chciałbym zrozumieć, jak działa Wbudowana Funkcja property. Myli mnie to, że property może być również używany jako dekorator ... @x.deleter
def x(self):
del self._x
I jak powstają dekoratory x.setter i x.deleter?
Jestem zdezorientowany.
Dlaczego "10000000000000000000 w zakresie (100000000000000001)" jest tak szybki w Pythonie 3?
Rozumiem, że range() funkcja, która jest w rzeczywistości typem obiektu w Pythonie 3 , generuje swoją zawartość w locie, podo ... acji xrange w Pythonie 2). Odpowiedzi by poke i by wim podaj odpowiedni kod źródłowy C i wyjaśnienia dla zainteresowanych.
Co to jest globalna blokada interpretera (Gil) w CPython?
Co to jest globalna blokada interpretera i dlaczego jest to problem?
Wokół usuwania GIL z Pythona zrobiło się dużo hałasu i ... ałem kompilatora ani interpretera, więc nie bądź oszczędny w szczegółach, prawdopodobnie będę potrzebował ich do zrozumienia.
Znajdowanie kodu źródłowego wbudowanych funkcji Pythona?
Czy istnieje sposób, aby zobaczyć, jak wbudowane funkcje działają w Pythonie? Nie chodzi mi tylko o to, jak z nich korzystać, ale także o to, jak zostały zbudowane, co kryje się za kodemsortowane lub wylicz itd...?
Czy słowniki są uporządkowane w Pythonie 3.6+?
Słowniki są uporządkowane w Pythonie 3.6 (przynajmniej pod implementacją CPython) w przeciwieństwie do poprzednich wcieleń. W ... ez Raymonda Hettingera .)
Update Grudzień 2017: dicts utrzymanie zamówienia wstawiania jest gwarantowane dla Pythona 3.7
Kiedy del jest przydatny w Pythonie?
Nie mogę wymyślić żadnego powodu, dla którego python potrzebuje słowa kluczowego del (a większość języków wydaje się nie mieć ... todę del.
Czy Jest jakiś powód, aby trzymać del w Pythonie, czy jest to pozostałość po Pythonowych dniach przed-śmieciowych?
Jak zaimplementowana jest lista Pythona?
Czy jest to lista linkowana, tablica? Szukałem i znalazłem tylko ludzi zgadujących. Moja wiedza na temat C nie jest wystarczająco dobra, aby spojrzeć na kod źródłowy.
Czy krotki są bardziej wydajne niż listy w Pythonie?
Czy istnieje jakaś różnica w wydajności między krotkami i listami, jeśli chodzi o tworzenie instancji i pobieranie elementów?
Dlaczego niektóre porównania float
Porównując pływaki do liczb całkowitych, niektóre pary wartości wymagają znacznie więcej czasu niż inne wartości o podobnej w ... dków użycia. Jestem po prostu ciekawy, dlaczego Python wydaje się bardziej walczyć z niektórymi parami wartości niż z innymi.
Dostęp do zmiennych klasy z listy w definicji klasy
Jak uzyskać dostęp do innych zmiennych klasy z listy w definicji klasy? W Pythonie 2 działa to samo, ale w Pythonie 3 nie dz ... # ...
]]
W tym przykładzie, apply() byłoby przyzwoitym obejściem, ale niestety zostało ono usunięte z Pythona 3.
czas.sen-śpi wątek czy proces?
W Pythonie dla * nix, czy time.sleep() blokuje wątek lub proces?
Dlaczego iteracja nad małym ciągiem jest wolniejsza niż mała lista?
Bawiłem się timeit i zauważyłem, że proste zrozumienie listy przez mały ciąg zajmuje więcej czasu niż wykonanie tej samej ope ... 8
>>> timeit("[x for x in ['a', 'b', 'c']]")
1.5286479570345861
Co się dzieje na niższym poziomie, co to powoduje?
Dlaczego kolejność w słownikach i zestawach jest dowolna?
Nie rozumiem, jak zapętlanie słownika lub zestawu w Pythonie odbywa się w' arbitralnej ' kolejności.
To znaczy, to jest języ ... akiś algorytm, który decyduje, która część słownika lub zestawu zostanie wybrana, pierwsza, druga i tak dalej.
Co mi umyka?
O co chodzi z cache integer utrzymywanym przez interpreter?
Po zapoznaniu się z kodem źródłowym Pythona, dowiaduję się, że utrzymuje on tablicę PyInt_Objects w zakresie od int(-5) do in ... umieć źródło w PyAST_Compile i PyEval_EvalCode, więc Jestem tu, aby prosić o pomoc, będę wdzięczny, jeśli ktoś da podpowiedź?
Dlaczego x * * 4.0 jest szybszy niż x * * 4 w Pythonie 3?
Dlaczego x**4.0 jest szybszy niż x**4? Używam CPython 3.5.2.
$ python -m timeit "for x in range(100):" " x**4.0"
10000 loo ... się to poza pętlą. Sprawdziłem i sytuacja występuje tylko (z tego co widziałem) kiedy baza jest podniesiona. Jakiś pomysł?
Jak dokładnie jest uruchamiany bajtowy Kod Pythona w CPython?
Staram się zrozumieć, jak działa Python (ponieważ używam go cały czas!). Z tego co wiem, kiedy uruchamiasz coś takiego jak py ... przekonwertowany na kod maszynowy? Czy interpreter Pythona jest już w kodzie maszynowym, więc mój skrypt nigdy nie musi być?
Jak nadpisać operacje kopiowania / deepcopy dla obiektu Pythona?
Rozumiem różnicę między copy A deepcopy w module kopiowania. Wcześniej z powodzeniem używałem copy.copy i copy.deepcopy, ale ... ób implementacji metod copy i deepcopy na tym obiekcie w celu zapewnienia copy.copy i copy.deepcopy odpowiedniego zachowania?
Jak wymiana członów w krotkach (a,b)=(b,a) działa wewnętrznie?
In [55]: a = 5
In [56]: b = 6
In [57]: (a, b) = (b, a)
In [58]: a
Out[58]: 6
In [59]: b
Out[59]: 5
Jak to zamiana wartości a i b działa wewnętrznie? Zdecydowanie nie używa zmiennej temp.