Я работаю со scapy и у меня есть вопрос, связанный со scapy, но также и с python.Я пытаюсь использовать переменные как scapy имена полей.Вот фрагмент кода, который должен проиллюстрировать, что я пытаюсь сделать (это не работает):
class Test(Packet):
name = "Test23"
def __init__(self,foo=None):
self.foo=foo
fields_desc = [
BitField(self.foo, 0x0, 4),
BitField("bar", 0x3, 4)
]
Теперь я представляю, что проблема в том, что fields_desc является атрибутом класса, а не классапеременная.Теперь, как я могу достичь того, что я хочу?(установка имени self.foo во время инициализации / инициализации класса?)
Буду благодарен за любую помощь.С наилучшими пожеланиями
Редактировать: добавления счетчика будет достаточно.Я пытался:
class Counter:
count = 0
def __init__(self):
self.__class__.count += 1
foo = [
"lala"+str(count)
]
print foo
a=Counter()
a.count
print a.foo
b=Counter()
b.count
print b.foo
Но, похоже, не работает.Было бы здорово, если бы вы указали мне правильное направление, так или иначе я потерялся.