Problem B: 以太网交换机的自学习算法

发布时间 2023-04-24 16:37:51作者: hangsingplus
 1 def func():
 2     lines = []
 3     while True:
 4         try:
 5             #x作为中间量更新交换表的端口号
 6             x = input()
 7             if x ==' ':
 8                 break
 9             x = x.split(' ', 3)
10 
11             flag = 0
12             # 利用enumerate函数迭代数组,省去i++的操作
13             for i, element in enumerate(lines):
14                 if x[1] == element[1]:
15                     flag = 1
16                     lines[i] = x
17                     break
18             if flag == 0:
19                 lines.append(x)
20         except:
21             break
22 
23     lines = sorted(lines, key=lambda lines : lines[1], reverse=False)
24     print("Mac Address       Ports   Time")
25     for element in lines:
26         print( "%-18s%-8s%s" %(element[1],element[2],element[3]) )
27 
28 if __name__ == '__main__':
29     func()