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

Я пишу метод класса, который хотел бы использовать переменные класса, если никакие другие значения не предоставляются def transform_point(self, x=self.x, y=self.y): НО … это, похоже, не работает: NameError: name 'self' is not defined Я чувствую, что есть более умный способ сделать это. Что бы вы сделали?

Graph_Tool – рисовать график с определенным текстом вершин

Я пытаюсь установить текст в разных вершинах и нарисовать их, но я не знаю, как это сделать. Я искал документацию в формате graph_tool, но я не могу понять, как это сделать, потому что примеры настолько запутаны … Мой код: from graph_tool.all import * g = Graph() g.add_vertex() // How to something like: g.vertex(0).text = "A" […]

Python – распаковать структуру в несколько кортежей

Я хотел бы знать, есть ли более чистый способ сделать следующее в Python 2.7? # Current working code! (is_enabled,) = struct.unpack_from("<?", data) cmd_speed = struct.unpack_from("<3h", data, 1) tach_speed = struct.unpack_from("<3h", data, 1+2*3) В частности, мне не нравится вручную отслеживать смещение в следующем кортеже. В идеале я хотел бы указать структуру данных с помощью одного формата; […]

Как я могу выполнять заданные операции над словарями Python?

Хотя невероятно полезно иметь возможность выполнять операции между ключами словаря, я часто желаю, чтобы я мог выполнять заданные операции над самими словарями. Я нашел несколько рецептов для разницы в двух словарях, но я нашел их довольно многословными и считал, что должно быть больше ответов на питонов.

Понимание функции len с помощью итераторов

Читая документацию, я заметил, что встроенная функция len не поддерживает все итерации, а просто последовательности и отображения (и множества). Прежде чем читать это, я всегда думал, что функция len использовала протокол итерации для оценки длины объекта, поэтому я был очень удивлен, читая это. Я прочитал уже поставленные вопросы ( здесь и здесь ), но я […]

Что такое объект «Я» в Python?

Я не понимаю объект «Я» в следующем Python-коде: >>> class Ancestor( object ): def __init__( self ): self.name = "Ancestor" def getName( self ): return self.name >>> class Base1( Ancestor ): def __init__( self ): self.name = "Base1" super( Base1, self ).__init__( ) def getName( self ): return self.name >>> class Base2( Base1 ): def […]

Создайте новый подсписок предыдущих символов каждый раз, когда в списке есть нуль, исключая нуль

Список, который я должен манипулировать, длиннее, но, например, используйте список, который [3,5,0,6,8,9,7,0,1,0] . Количество элементов между нолями не является постоянным. Я хочу сгруппировать термины, предшествующие нулю, в подсписках. Я ищу [[3,5],[6,8,9,7],[1]] ; нули разделяют термины, но не включаются в подсписку. Я не думаю, что могу использовать функцию split потому что я группирую элементы, поэтому я […]

добавление генераторов в стек в цикле, генераторы указывают на конечную переменную цикла

Я выполняю обход графика. В каждой точке я сохраняю генератор других возможных вариантов, которые можно было бы изучить. Позже я исследую некоторые из этих генераторов, но это не работает. Вот упрощенный пример, где вы можете увидеть, что переменная «node» установлена ​​на 3 во всех генераторах. (поэтому генераторы обращаются к переменной «node», но переменная «node» изменяется […]

Пользовательский вид списка dicts Python

У меня есть список dicts: ldicts = [{'name': '120-150'}, {'name': '90-120'}, {'name': '150-180'}, {'name': '>= 180'}, {'name': '<90'}, {'name': 'total'}] Я хотел бы отсортировать его по значению по возрастанию, чтобы результат был таким: sortedldicts = [{'name': 'total'}, {'name': '<90'}, {'name': '90-120'},{'name': '120-150'}, {'name': '150-180'}, {'name': '>= 180'}] Обычная сортировка не делает трюка: from operator import […]

Ярлыки с круговой диаграммой перекрываются для одних и тех же значений.

Здесь я пытаюсь создать круговую диаграмму, используя библиотеку python matplotlib . Но даты перекрываются, если значения одинаковы «0.0» несколько раз. Мой вопрос заключается в том, как я могу отображать их отдельно. Благодарю. Вот что я пробовал: from pylab import * labels = [ "05-02-2014", "23-02-2014","07-02-2014","08-02-2014"] values = [0, 0, 2, 10] fig = plt.figure(figsize=(9.0, 6.10)) […]

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