Pytania otagowane jako cpython

Referencyjna implementacja języka programowania Python. Użyj tego tagu w przypadku pytań specyficznych dla tej implementacji, ogólne pytania Pythona powinny być po prostu oznaczone tagiem „python”.


12
Dlaczego nie powinienem używać PyPy zamiast CPython, jeśli PyPy jest 6,3 razy szybszy?
Dużo słyszałem o projekcie PyPy . Twierdzą, że jest 6,3 razy szybszy niż interpreter CPython na ich stronie . Ilekroć mówimy o dynamicznych językach, takich jak Python, szybkość jest jednym z najważniejszych problemów. Aby rozwiązać ten problem, mówią, że PyPy jest 6,3 razy szybszy. Druga kwestia to równoległość, niesławna blokada …

9
Python vs Cpython
Co to za zamieszanie w Python i CPython (Jython, IronPython) , nie rozumiem: python.org wspomina, że ​​CPython to: „Tradycyjna” implementacja Pythona (pseudonim CPython) jeszcze jedno pytanie przepełnienia stosu wspomina, że: CPython to domyślny interpreter bajt-kodu Pythona, napisany w C. Szczerze mówiąc, nie rozumiem, co właściwie oznaczają oba te wyjaśnienia, ale …
447 python  cpython 

2
Dlaczego niektóre porównania typu float <liczby całkowite są cztery razy wolniejsze niż inne?
Porównując liczby zmiennoprzecinkowe z liczbami całkowitymi, ocena niektórych par zajmuje znacznie więcej czasu niż innych wartości o podobnej wielkości. Na przykład: &gt;&gt;&gt; import timeit &gt;&gt;&gt; timeit.timeit("562949953420000.7 &lt; 562949953421000") # run 1 million times 0.5387085462592742 Ale jeśli liczba zmiennoprzecinkowa lub liczba całkowita zostanie zmniejszona lub powiększona o określoną wartość, porównanie przebiega …

5
Jak zaimplementowano set ()?
Widziałem ludzi, którzy mówili, że setobiekty w Pythonie mają sprawdzanie członkostwa O (1). Jak są wdrażane wewnętrznie, aby to umożliwić? Jakiego rodzaju struktury danych używa? Jakie inne konsekwencje ma to wdrożenie? Każda odpowiedź była naprawdę pouczająca, ale mogę zaakceptować tylko jedną, więc podam najbliższą odpowiedź na moje pierwotne pytanie. Dzięki …


3
Dlaczego iteracja po małym łańcuchu jest wolniejsza niż po małej liście?
Bawiłem się czasem i zauważyłem, że wykonanie prostego rozumienia listy na małym łańcuchu trwało dłużej niż wykonanie tej samej operacji na liście małych ciągów pojedynczych znaków. Jakieś wyjaśnienie? To prawie 1,35 razy więcej czasu. &gt;&gt;&gt; from timeit import timeit &gt;&gt;&gt; timeit("[x for x in 'abc']") 2.0691067844831528 &gt;&gt;&gt; timeit("[x for x …

1
Dlaczego tuple (set ([1, „a”, „b”, „c”, „z”, „f”])) == tuple (set ([„a”, „b”, „c”, „Z”, „f”, 1])) w 85% przypadków z włączoną randomizacją hash?
Biorąc pod uwagę odpowiedź Zero Piraeus na inne pytanie , mamy to x = tuple(set([1, "a", "b", "c", "z", "f"])) y = tuple(set(["a", "b", "c", "z", "f", 1])) print(x == y) Drukuje Trueokoło 85% czasu z włączoną losowością mieszania . Dlaczego 85%?

10
IronPython kontra Python .NET
Chcę uzyskać dostęp do niektórych zestawów .NET napisanych w C # z kodu Pythona. Małe badania wykazały, że mam dwie możliwości: IronPython z wbudowanym interfejsem .NET Python z pakietem Python .NET Jakie są kompromisy między oboma rozwiązaniami?


2
Dlaczego zestawy Python nie zachowują kolejności wstawiania?
Zaskoczyło mnie, że niedawno odkryłem, że chociaż dykty gwarantują zachowanie kolejności wstawiania w Pythonie 3.7+, zestawy nie są: &gt;&gt;&gt; d = {'a': 1, 'b': 2, 'c': 3} &gt;&gt;&gt; d {'a': 1, 'b': 2, 'c': 3} &gt;&gt;&gt; d['d'] = 4 &gt;&gt;&gt; d {'a': 1, 'b': 2, 'c': 3, 'd': 4} &gt;&gt;&gt; …
12 python  set  cpython 


2
Dlaczego ustawienie deskryptora w klasie zastępuje deskryptor?
Proste repro: class VocalDescriptor(object): def __get__(self, obj, objtype): print('__get__, obj={}, objtype={}'.format(obj, objtype)) def __set__(self, obj, val): print('__set__') class B(object): v = VocalDescriptor() B.v # prints "__get__, obj=None, objtype=&lt;class '__main__.B'&gt;" B.v = 3 # does not print "__set__", evidently does not trigger descriptor B.v # does not print anything, we overwrote …
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.