Результаты поиска по запросу "python-internals"

1 ответ

Можно ли определить __setattr __ () в классе с помощью __slots__?

Скажем, у меня есть класс, который определяет__slots__: class Foo(object): __slots__ = ['x'] def __init__(self, x=1): self.x = x # will the following work? def __setattr__(self, key, value): if key == 'x': object.__setattr__(self, name, -value) ...

2 ответа

 интернированы, эти условия не выполняются на примере ОП.

on оптимизирует операции приращения строки. При инициализации памяти для строки программа оставляет для нее дополнительное пространство расширения, поэтому при приращении исходная строка не копируется в новое место. мой вопрос, ...

2 ответа

Почему функция Python 'len' быстрее, чем метод __len__?

В Pythonlen это функция, чтобы получить длину коллекции путем вызова объекта__len__ метод: def len(x): return x.__len__()Так что я бы ожидал прямого вызова__len__() быть по крайней мере так быстро, какlen(). import timeit setup = ''' ''' print ...

ТОП публикаций

8 ответов

Причина в том, что кортежи могут храниться в кеш-памяти, в отличие от списков. Программа всегда считывает из памяти ячейки списков, так как она изменчива (может измениться в любое время).

ли разница в производительности между кортежами и списками, когда дело доходит до создания и поиска элементов?

3 ответа

Как именно работает байт-код Python в CPython?

Я пытаюсь понять, как работает Python (потому что я использую его все время!). Насколько я понимаю, когда вы запускаете что-то вроде python script.py, скрипт преобразуется в байт-код, а затем интерпретатор / VM / CPython - на самом деле просто ...

3 ответа

Запись (и не) в глобальную переменную в Python

Исходя из гораздо менее динамичного C ++, у меня возникли проблемы с пониманием поведения этого кода Python (2.7). Примечание: Я знаю, что это плохой стиль программирования / зло, но я хотел бы понять это, тем не менее. vals = [1,2,3] def f(): ...

1 ответ

Python: почему * и ** быстрее, чем / и sqrt ()?

Оптимизируя мой код, я понял следующее: >>> from timeit import Timer as T >>> T(lambda : 1234567890 / 4.0).repeat() [0.22256922721862793, 0.20560789108276367, 0.20530295372009277] >>> from __future__ import division >>> T(lambda : 1234567890 / ...

1 ответ

Как внутренняя перестановка членов в кортежах Python (a, b) = (b, a)?

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Как эта перестановка значений a и b работает внутренне? Определенно не используется временная переменная.

1 ответ

Что именно делает «del»?

Вот мой код: from memory_profiler import profile @profile def mess_with_memory(): huge_list = range(20000000) del huge_list print "why this kolaveri di?"Это то, что выводится, когда я запускаю его из интерпретатора: Строка # Использование ...

3 ответа

Как оператор print создает локальные переменные

Вопрос в конце этого поста. Первый фрагмент:пустой словарь локальной переменной. def outer(): x = 1 def inner(): print "Local variables: %s" % locals() return inner() print outer()Вывод: локальные переменные: {} Второй фрагмент:печать внутри ...