Как сохранить вывод для l oop в список python? - PullRequest
0 голосов
/ 29 мая 2020
allpkts = []
for i in range(10):
        s[IP].len = i
        del s[IP].chksum
        del s[UDP].chksum
        allpkts.append(s)
print allpkts

Здесь, в моем списке allpkts, я вижу вывод только последнего числа. Я хочу, чтобы все пакеты от 0 до 9 во всех пакетах.

1 Ответ

0 голосов
/ 30 мая 2020

Вам нужно делать копию s на каждой итерации. В противном случае вы неоднократно изменяете один и тот же пакет, не помещая разные пакеты в список.

allpkts = []
for i in range(10):
    stemp = s.copy()
    stemp[IP].len = i
    del stemp[IP].chksum
    del stemp[UDP].chksum
    allpkts.append(stemp)
print allpkts
...