Tag: python internals

Доступ к имени, которое создается создаваемым объектом,

Я пишу код для определения имени, которому назначен объект. Это для общей работы по отладке и для дальнейшего ознакомления с внутренними компонентами python. Я его структурировал как декоратор класса, так что все экземпляры этого класса будут записывать свои имена, если это возможно. Код довольно длинный, поэтому я не буду публиковать его, если не задано. Общая […]

Зачем закрывать курсор для Sqlite3 в Python

Есть ли какая-нибудь польза для закрытия курсора при использовании модуля sqlite3 Python? Или это просто артефакт DB API версии 2.0, который может делать что-то полезное только для других баз данных? Имеет смысл, что connection.close () освобождает ресурсы; однако неясно, что именно делает cursor.close (), действительно ли он освобождает какой-то ресурс или ничего не делает. Документы […]

Немонотонное потребление памяти в словарях Python2

Может ли кто-нибудь объяснить это немонотонное использование памяти словаря в CPython 2.7? >>> import sys >>> sys.getsizeof({}) 280 >>> sys.getsizeof({'one': 1, 'two': 2, 'three': 3, 'four': 4, 'five': 5}) 280 >>> sys.getsizeof({'one': 1, 'two': 2, 'three': 3, 'four': 4, 'five': 5, 'six': 6}) 1048 >>> sys.getsizeof({'one': 1, 'two': 2, 'three': 3, 'four': 4, 'five': 5, […]

Возвращение NotImplemented из __eq__

Каков результат возврата NotImplemented из специального метода __eq__ в python 3 (хорошо 3.5, если это имеет значение)? Документация не ясна; единственный соответствующий текст, который я нашел только смутно, относится к «некоторым другим недостаткам»: Когда NotImplemented возвращается, интерпретатор затем попытается NotImplemented отраженную операцию на другом типе или другом резервном копировании в зависимости от оператора. Если все […]

Python: множественное присвоение и индивидуальная скорость присваивания

Я искал, чтобы выжать немного больше производительности из моего кода; недавно, просматривая эту страницу вики Python , я нашел это утверждение: Множественное назначение выполняется медленнее, чем отдельное задание. Например, «x, y = a, b» медленнее, чем «x = a; y = b». Любопытно, я протестировал его (на Python 2.7): $ python -m timeit "x, y […]

Что такое протокол последовательности pythons?

Python многое делает с помощью магических методов, и большинство из них являются частью некоторого протокола. Я знаком с «протоколом итератора» и «протоколом номера», но недавно наткнулся на термин «протокол последовательности» . Но даже после некоторых исследований я не совсем уверен, что такое «протокол последовательности». Например, функция C API PySequence_Check проверяет (согласно документации), если какой-то объект […]

Почему в кусочках python допускаются встроенные встроенные типы?

Я только улучшаю тестовое покрытие для библиотеки , которая должна поддерживать срезы, и я заметил, что фрагменты могут содержать нецелые типы: >>> slice(1, "2", 3.0) slice(1, '2', 3.0) >>> sl = slice(1, "2", 3.0) >>> [1,2,3][sl] Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: slice indices must be integers or None […]

Два экземпляра одного и того же модуля Python?

Я создал модуль Python с единственной функцией, которая просто печатает «a!». Я открыл интерпретатор Python и импортировал модуль в 2 разных синтаксиса >>> import a >>> from a import func >>> func() a! >>> a.func() a! На этом этапе я изменил функцию, чтобы распечатать что-то еще, а затем снова оценил >>> func() a! >>> a.func() […]

Списки обмена Python

В python, когда я назначаю список другому, например: a = [1,2,3] b = a Теперь b и пункт в тот же список. Теперь, рассматривая два списка, a = [1,2,3] b = [4,5,6] a,b = b,a Теперь, как они обмениваются, как и любой другой тип данных, и не заканчиваются оба указателя на один и тот же […]

Почему refs увеличивает 2 для каждого нового объекта в Python?

Мне немного странно, что номер refs в интерактивной среде увеличивается 2 после определения нового объекта. Я создал только один объект, не так ли? >>> v Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'v' is not defined [41830 refs] >>> v = "v" [41832 refs]

 
Interesting Posts for Van-Lav

Фляги долгоживущие глобальные ресурсы

Есть ли альтернатива для удаленного модуля 'nltk.model.NGramModel'?

Тип данных столбца pandas изменяется на объект, когда он передается функции через apply?

Объект пользовательского типа в качестве словарного ключа

Разница между двумя ближайшими к нулю продуктами: решение без грубой силы?

Не удается установить Cython на win7

Декодирующие последовательности в GaussianHMM

Соленые огурцы: Почему они так называли?

найти и удалить из многомерного массива numpy

Добавление матрицы 2 и Multiplying 2 в python с помощью scipy / numpy

Python IOError: файл не открыт для записи, а глобальное имя 'w' не определено

Как перебрать начальные размеры массива Numpy?

который является минималистичным сервером разработки wsgi python с поддержкой перезагрузки кода?

Сообщение об ошибке: исполняемый файл «chromedriver» должен быть доступен в пути «

Python: создать глобальную переменную из строки?

Python - лучший язык программирования в мире.