Угловые скобки в Python
Я хочу создавать пакеты, используя scapy. Просматривая членов класса IP(), я обнаружил следующую кодовую идиому:
'fieldtype': {
'frag': <Field (IP,IPerror).frag>,
'src': <Field (IP,IPerror).src>,
'proto': <Field (IP,IPerror).proto>,
'tos': <Field (IP,IPerror).tos>,
'dst': <Field (IP,IPerror).dst>,
'chksum': <Field (IP,IPerror).chksum>,
'len': <Field (IP,IPerror).len>,
'options': <Field (IP,IPerror).options>,
'version': <Field (IP,IPerror).version>,
'flags': <Field (IP,IPerror).flags>,
'ihl': <Field (IP,IPerror).ihl>,
'ttl': <Field (IP,IPerror).ttl>,
'id': <Field (IP,IPerror).id>},
'time': 1465637588.477862,
'initialized': 1,
'overloaded_fields': {},
Я относительно новичок в Python. Может кто-нибудь объяснить мне, для чего служат угловые скобки в каждом определении типа поля?
Я пытался выяснить это сам, используя следующую документацию, но полностью застрял.
Спасибо
1 ответ
Решение
repr
применительно к Field
Экземпляр использует следующее определение для __repr__
который является источником синтаксиса не Python.
def __repr__(self):
return "<Field (%s).%s>" % (",".join(x.__name__ for x in self.owners),self.name)