linux - Sorting and using maps in Python -


  रेखा, पी, एच, #, SET 0x53e9e0, 0, 0, 1, 55 0x53ea18, 0, 0 , 2, 55 0x53ea50, 0, 0, 3, 55 0x53ea18, 0, 1, 4, 55 0x53ea88, 0, 0, 5, 55 0x53eac0, 1, 0, 6, 55 0x53ea18, 0, 1, 7, 55 0x53eaf8 , 0, 0, 8, 55 0x53eb30, 1, 0, 9, 55 0x53eb30, 0, 1, 10, 55 0x53eb68, 0, 0, 11, 55 0x53eba0, 1, 0, 12, 55 0x53ebd8, 1, 0, 13, 55 0x53ec10, 0, 0, 14, 55 0x53ec48, 1, 0, 15, 55 0x53ec48, 1, 1, 16, 55 0x53ec80, 0, 0, 17, 55 0x53ecb8, 0, 0, 18, 55 0x53ecf0, 1, 0, 1 9, 55 0x53ecf0, 0, 1, 20, 55 0x53 ही 28, 1, 0, 21, 55 0x53e 9e0, 1, 0, 22, 55 0x53e9e0, 0, 1, 23, 55 0x53e9e0, 1, 1, 24 , 55   

0 से लेकर 1024 तक के प्रत्येक सेट के लिए और किसी भी क्रम में होने वाली (ऊपर से मैंने केवल 55 वें सेट के पहले 25 को मुद्रित किया है)। मैं प्रत्येक पंक्ति के लिए P == 1 से पहले और उसके बाद एक एच == 1 प्राप्त करना चाहता हूं। मुझे यह जानना है कि यदि यह 16 से कम है तो कितने रन चले गए हैं। उदाहरण के लिए: रेखा पर विचार करें: 0x53e9e0 में भौतिक रेखा 2 में पी और एच 0 है। आखिरी लेकिन तीसरी पंक्ति (रेखा 23), 0x53e 9e0 के दोहरावों से रेखाएं, लेकिन 16 से अधिक रन पार हो गए हैं (अतः इसे एक नई पंक्ति माना जाता है) हालांकि, रेखा 23 और 24 में 1 का अंतर है।

1-16 के अंतर के साथ कई ऐसी रेखाएं हैं मैं एक प्रति सेट के आधार पर उन सभी पंक्तियों को खोजना चाहता हूं।

  पंक्ति = "" " 0x53e 9e0, 0, 0, 1, 55 0x53ea18, 0, 0, 2, 55 0x53ea50, 0, 0, 3, 55 0x53ea18, 0, 1, 4, 55 0x53ea88, 0, 0, 5, 55 0x53eac0, 1, 0 , 6, 55 0x53ea18, 0, 1, 7, 55 0x53eaf8, 0, 0, 8, 55 0x53eb30, 1, 0, 9, 55 0x53eb30, 0, 1, 10, 55 0x53eb68, 0, 0, 11, 55 0x53eba0 , 1, 0, 12, 55 0x53ebd8, 1, 0, 13, 55 0x53ec10, 0, 0, 14, 55 0x53ec48, 1, 0, 15, 55 0x53ec48, 1, 1, 16, 55 0x53ec80, 0, 0, 17, 55 0x53ecb8, 0, 0, 18, 55 0x53ecf0, 1, 0, 1 9, 55 0x53ecf0, 0, 1, 20, 55 0x53 छ 28, 1, 0, 21, 55 0x53e 9e0, 1, 0, 22, 55 0x53e9e0, 0, 1, 23, 55 0x53e9e0, 1, 1, 24, 55 "" "i के लिए अंतिम पंक्ति = {}, गणना की रेखाएं (lines.split ('\ n')): id = line.split (',' ) [0] यदि अंतिम_सेन में आईडी: last_i = last_seen [id] डेल्टा = i - last_i यदि डेल्टा & lt; = 16: print ("last seen {} at {}, {} लाइन पहले।"। प्रारूप (id, last_i , डेल्टा)) पिछले_सेन [आईडी] = i   

आउटपुट:

  1x 2 में 1x53ea18 देखा गया पहले। पिछली बार 0x53ea18 को 3 पर देखा, 3 पंक्तियां पहले। पिछली बार 0x53eb30 को 8 में देखा, 1 पंक्ति पहले। आखिरी बार 0x53ec48 14 पर देखा, 1 लाइन पहले पिछली बार 0x53ecf0 18 पर देखा, 1 लाइन पहले। पिछली बार 0x53e9e0 21 पर देखा, 1 पंक्ति पहले। पिछली बार 0x53e9e0 22 पर देखा, 1 लाइन पहले।    

Comments

Popular posts from this blog

c# - Roxy file manager in MVC doesn't accept session path -

php - proc_open Too many open files in long running Symfony Console app -

c# - Show a huge number of data in DevExpress GridView -