Найти - Пользователи
Полная версия: Списки!
Начало » Python для новичков » Списки!
1 2 3
o7412369815963
можно вот так извратиться, если порядок вывода не важен:
# coding: utf-8

txt = """uvr-10 340 00:1b:fc:20:de:29 11 20100101.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100102.uvr-10
uvr-10 340 00:1b:fc:20:de:28 11 20100106.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100109.uvr-10"""

z = dict(map(lambda x:[x.split(' ')[2],x],txt.split('\n')))
print '\n'.join(z[x] for x in z )
результат:
uvr-10 340 00:1b:fc:20:de:28 11 20100106.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100109.uvr-10
avdoshkin
o7412369815963
можно вот так извратиться, если порядок вывода не важен:
# coding: utf-8

txt = """uvr-10 340 00:1b:fc:20:de:29 11 20100101.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100102.uvr-10
uvr-10 340 00:1b:fc:20:de:28 11 20100106.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100109.uvr-10"""

z = dict(map(lambda x:[x.split(' ')[2],x],txt.split('\n')))
print '\n'.join(z[x] for x in z )
результат:
uvr-10 340 00:1b:fc:20:de:28 11 20100106.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100109.uvr-10
Ок, на мысль навел дальше думать буду! Спасибо!!!
Zubchick
дальше думать буду! Спасибо!!!
А что тебя раньше останавливало?
o7412369815963
Вспомнил про штатную ф-ию группировки “groupby”
# coding: utf-8

from itertools import groupby

txt = """uvr-10 340 00:1b:fc:20:de:29 11 20100101.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100102.uvr-10
uvr-10 340 00:1b:fc:20:de:28 11 20100106.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100109.uvr-10"""

print '\n'.join( [ x[1].next() for x in groupby( sorted(txt.split('\n')), key=lambda x:x.split(' ')[2] ) ] )
если нужно что-б последовательность оставалась (:29 :28 :29) то можно без сортировки:
print '\n'.join( [ x[1].next() for x in groupby(txt.split('\n'), key=lambda x:x.split(' ')[2] ) ] )
сейчас выписал стандартные ф-ии для работы со списками, с примерами. может пригодится
avdoshkin
o7412369815963
Вспомнил про штатную ф-ию группировки “groupby”
# coding: utf-8

from itertools import groupby

txt = """uvr-10 340 00:1b:fc:20:de:29 11 20100101.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100102.uvr-10
uvr-10 340 00:1b:fc:20:de:28 11 20100106.uvr-10
uvr-10 340 00:1b:fc:20:de:29 11 20100109.uvr-10"""

print '\n'.join( [ x[1].next() for x in groupby( sorted(txt.split('\n')), key=lambda x:x.split(' ')[2] ) ] )
если нужно что-б последовательность оставалась (:29 :28 :29) то можно без сортировки:
print '\n'.join( [ x[1].next() for x in groupby(txt.split('\n'), key=lambda x:x.split(' ')[2] ) ] )
сейчас выписал стандартные ф-ии для работы со списками, с примерами. может пригодится
Привет, спасибо! Все четко получилось! За ссылку спасибо, твои примеры разобрал и почитал, так намного легче в изучении языка, к сожалению от таких глупых вопросов на стадии изучения не исключить.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB