In [39]: hexx = r'\x80\x20\x00\x00'
In [40]: print hexx
\x80\x20\x00\x00
In [41]: listhex = [hexx]
In [42]: print listhex
['\\x80\\x20\\x00\\x00']
In [43]: print listhex[0]
\x80\x20\x00\x00
In [44]: print (listhex[0], listhex[0])
('\\x80\\x20\\x00\\x00', '\\x80\\x20\\x00\\x00')
Чем обусловлено такое поведение и где про это можно почитать?
Как мне быть если внутри списка требуется передать одинарный ‘\’
пример
In [45]: _edit = netsnmp.Varbind('.1.3.6.1.2.1.17.7.1.4.3.1.4', 1107, listhex[0] , 'octetstr')
In [46]: netsnmp.snmpset(_edit, Version = 2, DestHost=ip, Community=XXXXXXXXXXXXX)
Out[46]: 0А теперь вместо переменной используем литерал:
In [47]: _edit = netsnmp.Varbind('.1.3.6.1.2.1.17.7.1.4.3.1.4', 1107, '\x80\x20\x00\x00' , 'octetstr')
In [48]: netsnmp.snmpset(_edit, Version = 2, DestHost=ip, Community=XXXXXXXXXXXXXXXX)
Out[48]: 1